I hate to defend Microsoft, but...
Crap hardware support? Who cares - you're running numerical calculations, not a bloody game on some tossy video card.
Crap vendor support? This vendor will have been given full support by Microsoft, and will be equally supportive of their users.
Performance? They're in the top 10.
Stability? If you're not dealing with odd hardware / crappy drivers, Windows Server versions are actually fairly stable.
Why not run your compute nodes under Windows?
You can actually run Windows Server 2000 and above headless, removing any GUI overhead - so why not?
I still agree that on any particular hardware configuration, Linux or another *nix will likely be faster, but your experience of desktop applications doesn't necessarily translate to HPC.