To preface to avoid what might otherwise seem like a bias toward defending use of Windows: I'm a free software activist, a GNU maintainer, and do extensive volunteer work for GNU and the FSF.
It's not fair blame. Many companies simply go for what works and throw money at the problem. Windows historically has excellent support from a large number of third parties.
The other problem is third-party software. I work for an insurance company. The system that they use for managing everything---policies, accounting, brokers, etc---is tied to Windows. This is a specialized program---there are only a few of them that exist, and none as sophisticated as the one this company uses. This system has been responsible for not only tying the office to Windows, but holding us back from upgrading---for the longest time we couldn't even get off of IE6 because it didn't support anything higher.
I'm able to do 99% of my work within a GNU/Linux VM. But on rare occasion, I need to use that system, and it requires Windows. Everyone else in the office---the majority of the company---requires Windows. This is a system that the company has invested many millions of dollars into.
So while we can do our best to inform others, perhaps before they make these critical business decisions, it ultimately comes down to practicality for most businesses. Yes, they may pay for it. Yes, they're taken advantage of, have issues with vendor lockin, etc, but unless you travel upstream and liberate those systems or provide suitable replacements _that the business is confident will have support for years to come_, there's not much to do.
I'm not defending the situation; it's terrible. But sympathy _should_ be had, because there's much to lament, and much room to help.