I don't hate Linux, I use Linux and have done for years, it suits the purpose I wish to use it for.
The reason I wont suggest it to most people, is that outside of technical circles (as in all the people I work with), it's simply too much hassle. Most people use a version of Windows at their place of work and are therefore comfortable with it - in many cases it's taken me a number of years to wean them off of IE and onto something better, let alone changing the entire interface.
Most people want to play games, they don't want the PC for "productive" purposes, therefore they want to download demos and such-like and be able to play them, something they cant do with a Linux distro (no, I don't want to have to explain to them how to run XP in VM).
As for security, whilst it's true that Linux is much more secure than Windows, it still ha the same basic problem that Windows does and indeed the same one that all OS's have in common - most users are stupid, will click anything, install anything and by and large are their own worst enemy, following the most obvious of phishing attacks etc etc.
I've yet to meet someone that got a virus or trojan without visiting a dodgy site link or installing a file they shouldn't have (paris_hilton_naked_video.exe and the like).