The jpg and png formats work well on linux and Mac. I have first hand experience using both on both.
There's modular and then there's modular.

The whole notion of MFCs (or other libraries) is being modular. I mean, that's what object oriented programming is all about. As far as parts of the DC code being modular, i.e. reusable, with other libraries; all of the code relating to MFCs is not usable with other libraries, so everything related to how it looks will have to be rewritten. The other code may or may not be usable, I'm not the best judge, but I think a lot of it will be. Unfortunately 'a lot' of a third to a half is not a lot.

But it is better than nothing.