Part of what makes CVS work is that it is usually OK if multiple people edit the same file at the same time. Because usually people are editing unrelated parts of the file.

The claim that the person who keeps the file out loses is based on the fact that they can't checkin until they have noted and resolved the conflict. Most conflicts actually turn out to be easy to resolve. I believe that you can also arrange for some key people to be notified in the event of conflict so that you can be sure that people resolve it correctly.

As for the question of who makes it work and why, you have not described any conflict issue yet that makes me believe that CVS is unworkable for you. However I suspect that raw performance issues from some of CVS' algorithmic mistakes are a good reason for you not to use it.

Cheers,
Ben

PS The cron job that I mentioned is trivial to write. Whether your culture is such that people would take kindly to feedback is another story, but a group of developers that cannot give each other feedback is a group that is likely to wind up with climbing tension levels...