> Or is it on their best interest to keep it broken?
It seems similar to a strategy they use more often, famously known as embrace, extend, and extinguish [1]:
1. Use some standard/specification
2. Accumulate lots of users with questionable strategies
3. Extend/break/deviate from the specification
4. Devs update software to cope with the undocumented Microsoft(c) behavior
5. There is no point in following the specification or standard anymore, since it won't work in practice anyway. Microsoft effectively dictates what devs do.
It seems similar to a strategy they use more often, famously known as embrace, extend, and extinguish [1]:
[1]: https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...