Has anyone in your company ever said "let's add a Word converter for this". And then you added a word converter, probably from an open source project. And then from that point people sent end endless variations of files that broke or otherwise had a lot of problems.
It's not your fault. And Microsoft is not out to get you.
Joel Sposky had an interesting and informative article about the details of the Office File formats. My 5 second summary — the formats were designed for speed back when it was important. And Microsoft has since incrementally developed rather than redesign. And now, the best way to convert an Office document is to run office.
You can automate Office pretty easily - in Windows, at least. But then you need:
Hard? No. However, if you happen to be a Linux shop, and we are, the idea of having a lone Windows server in your network feels just like throwing salt in your eyes or jumping onto a bed of nails repeatedly. For many whiny trivial reasons. And one big good reason.
You have to administer a new operating system. Yes, Windows sounds easy, but it's not. Probably easier than Linux to learn yes, but it's a ton of complexity to throw into a system where your typical hires might only use a Windows box for playing a few games.Thus, dealing Microsoft Office forces you into a really high-cost of training, and doing something very complicated (creating a heterogeneous network), just to convert content. For a non-Microsoft shop, this is the sort of trivial-turned-oh-my-god experience that makes you say "Microsoft Sucks".
What's interesting to me here is that Microsoft doesn't suck. They took on a nasty problem at the beginning, to make interactivity fast despite the hardware. They solved it, and then kept that part around, extending the software when the original problem went away — hardware got faster.
There is a lesson here. Pay attention to the nasty problems you solve today. Adding complexity to handle those nasty problems could well end up with the Office experience. Work very hard, only to have people say, "You suck".