MS are dealing with marketplace demands. As a major player, they're dealing with essentially commoditised services. They can't have highly reactive pricing, because most of their customers don't have reactive pricing for their customers; pricing in US dollars would effectively be instantly reactive pricing dependant on exchange rate movements only, and making smaller adjustments to pound price to account for exchange rates would be literally reactive pricing. That means dollar pricing would bugger up MS's clients' budgets very quickly indeed, which would be total disaster in international markets.
Microsoft sells only in dollars.
Market movements lead to deflation/devaluation in Xland.
Speculators then consider that the majority of companies in Xland are going to have a soaring cost-base, so consider all such companies a liability, further destabilising the economy of Xland.
Microsoft's policy of making large, infrequent corrections to account for exchange rate moves is actually pretty good for everyone.