Thereby hangs a tale. I inherited
DBD::CSV from Jochen Weidman back in 1999 and at that time it already had many users. Jochen had decided on using windows-style eol as the default because the primary intended audience was users of Excel. I left the default as-is in DBD::CSV for backward compatibility but in my
DBD::AnyData I changed the default to be "\n" (i.e. the line ending on the platform where the script is being run) which usually works better except when people get files from elsewhere. So, in short, no, always using "\n" is not a bad idea.