That's because open source is, at heart, a make-or-buy decision. To get the most value from it, you have to become part of the community. You have to make contributions, report bugs, test beta code. You're not just investing money, but time. Employee time.
In the contracting model that dominates the boom town of modern Washington created by the Bush Administration (the Iraq War was almost all done by contract, and the Administration's “privatization” efforts mainly involved contracting) this doesn't compute. If you do switch to open source (and some contractors have) the savings are all the contractors', both now and later.
For government to get the most value from open source, it has to hire its own programmers whose time can be spent capturing that value on behalf of their employer, namely you and me.
Yes, you want standards and interoperability with open source. But they're not essential. You can go down a one-way road with open source and you can create proprietary software that's based on standards and interoperates.