The Economist has a fine article on the growing discord between Microsoft and (especially foreign) governments over the future of software. At issue is not only the cost, but issues of control, proprietary software vs. standards, and reliability.
At the crux of the story is the defection of Munich, Germany from a Microsoft house to Linux that occurred earlier this year.
This is of such a concern to Microsoft that Steve Ballmer (CEO) cut short a vacation in Switzerland to fly to Germany and try to lobby the folks in Munich.
As much as I am definitely a fan of commercial software (and making money with it), I can completely understand the point of those in government who believe that they must free themselves of the yoke of Microsoft in order to guarantee the control of their own destiny going forward.
Standards is what it is all about for me. The problem with Microsoft is that they comply with as few of them as possible and create their own (often redundant) standards to feed their appetite for proprietary lock-ins. If you could trust that running a Windows environment with a FreeBSD or Linux server would work correctly, then there would be less of a problem. Likewise if you reverse clients and servers.
As for Microsoft's claim that they need to control the horizontal and the vertical in order to provide security and ease of use, this is most obviously a cruel joke, because Microsoft is (so far) incapable of providing either.
Perhaps we need a more concentrated effort on behalf of the governments to create standards and allow small companies to implement those standards in order to provide a security and capability framework that is immune to the kinds of proprietary monopolistic tendencies of companies such as Microsoft.
With all this said, my feeling is that they are setting themselves up for a big fall (legally as well as publicly) by pushing their monopolist agenda instead of at least attempting to provide some openings for the other players on the field.