As Philip says, the desktop platform for 3rd parties is not as attractive as it should be, given the fragmentation on two big, and incompatible for the most part, development platforms.
And it sucks that politics are involved, since that’s the only reason I can think of about glib, for instance, not being used in DBus, adding the need to copy/paste code from glib to DBus code or rewrite already existing/well tested code. This introduces the need to be updating the code in DBus whenever a bug is fixed in the GLib one, and, most important, fails short in the code reuse philosophy free software is supposed to promote.
Of course, this is just a small detail compared to Philip’s cool integration ideas, but I think a good common platform could help in solving all those integration problems.
So yeah, please let’s have some form of committe or something that approaches a similar KDE people committe to try to promote more the code reuse between the 2 desktops, trying to share as much of the platform as possible. Then, once the basics are shared, we’ll just have two different ways of writing desktop applications, just like there are several different ways on Windows (Delphi, VB, C API, Java, etc).