Im not trying to convert anyone, but i gotta point out a couple things.
For programming, Kdevelop and Anjunta
To keep your website up to date you could still use Linux, just throw in Samba. Then windows can see the Linux box.
Then you could either work in the folder on the server or setup rsysnc. Rsysnc would keep everything in sync for you.
DirectX, you could if you wanted to, but im sure its a pain
(run winex, for games. or use Bochs to use windows in linux, havent done it but heard it can be done, for free!)