I agree but only if the costs are reasonably comparable. For example if there's a commercial product that would cost 10x to replace then I don't think that's appropriate use of public money.
But if the costs are similar then OSS should always be prefered because it creates new value for other users and while a commercial entity can't necessarily capitalize on that value governments don't need to.
You can only have a license with source if you think about it ahead of time.
One of the few correct statements Ayn Rand ever made was that when the age of money ends, it will usher in the age of pull. If you support someone that advocates a technological overhaul and it doesn't pay off, then you'll be left holding the bag. Not all politics in government happens on Capitol Hill.
However it is disingenuous to discount the uncounted thousands of hours of training //per worker// in products with nearly identical look and feel (prior year's versions). This is a result of the /monopoly/ that they have had for decades.
Public money should be spent on open (source) software. File formats should be exchangeable and switching providers shouldn't be intentionally difficult.