Honestly, for a tool you would use all day long at work, $500 is cheap. If you NEED Visual Studio for C++, then it's worth the money.
Sure, on Linux and OS X you get free dev tools like XCode and GCC, but MSFT spends a lot of money building these tools, so if they decide they no longer want to subsidize them by offering them free, it's their business.
They want devs making Metro apps, not old Win32 C++ apps. If they don't get Metro apps to be built in a big way, Windows 8 tablet edition for human beings 2012 is never going to take off.
It makes sense for Microsoft.