I would argue that's a Microsoft problem... I don't think office files are even compatible with their own standard: http://en.wikipedia.org/wiki/Office_Open_XML .
This is also Microsoft's problem.
Also, the cost of a Windows+Office license is so small that pretty much any company will happily buy it for an employee.
EDIT: Unless, of course, they have a private internal standard...
You can't really fix something when the spec is incomplete, ambiguous, and refers to non-disclosed information, all the while multiple official implementations exist that contradict both themselves and the spec about the behavior to have.
Now what about Microsoft implementing ODT correctly?
Note: Both google docs and iWorks handle this significantly better.