Programmers should NOT try to evangalise their clients into using something they feel is pure.
They should take the specs and write the code.
If there is a technical reason why that code can't be created, THEN you may go to the client and tell him so, but never because you're too lazy or you think you're too good to do it.
If you're going to tell a multinational they need to change their entire IT infrastructure just because you feel deep inside that Microsoft is evil you'll be fired from the job there and then and rightly so.
MS Office is the de-facto standard in office application fileformats out there, so you'd better live with it.
Even IF you get your employer to move to another office package, a major requirement of that package will be support for MS Office files because they will get those files from outside sources all the time and will need to read them (and write them, as they can't expect their contacts to have some obscure package that you're using because it's properly anti-Microsoft).