Rick:
To avoid the problem that Linux users will get disturbing double-linefeeds when reading Windows files, CVS (and SVN, too) fiddle with line breaks, adding and removing LFs between architectures as needed. This is actually a good feature, but it relies on the assumption that files are in "native" format (not true for SVN because you can configure that on a per-file base).
However, since Yiannis is getting double-LFs, my idea was that possibly he was using his editor set to "CR & LF", which would write files the Windows way. While being able to read and write data in non-native formats is a cool feature on the one hand side (there is nothing more annoying than opening a Unix file with Notepad...), it is strictly speaking incorrect.
CVS, when reading that file, would know that it is running on Linux. Since it makes sense that a file is in "native" format, CVS woud therefore assume that it has to insert LF after CR, which is perfectly logical. Now it depends on how smart CVS really is, it may either only insert a LF if it is missing, or (and so I believe) simply insert a LF after every CR.
The options you added to line endings mode are certainly correct. But while they are correct, their usage is not, because it is not what other programs will assume.
Yiannis:
Don't even think about migrating? What is so scary about running
cvs2svn? It should really not cause too much grief? I mean, you can say "no" after thinking about it, but not think about it at all?
There are even GPLed hook scripts available that allow back-versioning to a read-only CVS repository, so while committing to SVN, people can still check out via CVS if they want.