Because it doesn't have to be that way. You're just arguing from the "we've always done it that way" perspective. Years ago, I took the extra time to compile a Qt application so that it would run on Windows and Linux with the same code base. Why not? Why not compile for Windows and Mac, and let people choose what works for them? You may have no use for it, but I do. Is it worth the effort? Depends on the application? Is it worth Microsoft's time to support? Obviously not. But at this point, the ability to compile for multiple platforms at the same time shouldn't have to be rocket science for the situations where it makes sense.
That's not my argument at all, but whatever, look at yours. You initially mention MFC, a Windows only technology, and follow that up with a QT example. Well yes; QT is meant to be cross platform! The MFC example made no sense whatsoever.