Die kurze Antwort ist, dass (zumindest theoretisch) die gesamte Software auf diese Weise besser, effizienter und zusammenhängender läuft.
Die lange Antwort lautet, dass das Ziel der meisten Desktop-Umgebungen darin besteht, den Großteil der Grundbedürfnisse eines Benutzers zu befriedigen, und dass die Leute, die an diesen Projekten arbeiten, unterschiedliche Vorstellungen darüber haben, wie diese Arbeit erledigt werden kann. Sie alle entwickeln also Software, die ihre Ideale zur Erfüllung dieser Anforderungen widerspiegelt.
GNOME verfügt über Gedit, Brasero und andere GTK-basierte Software, da sie reibungslos funktioniert, keine zusätzlichen Frameworks erfordert und zu dem passt, was die GNOME-Entwickler als ideale Desktop-Erfahrung ansehen. Mittlerweile verfügt KDE über Software, die auf QT (einem anderen Software-Framework) basiert und für das steht, was die KDE-Leute als das bessere Desktop-Erlebnis ansehen.
Der Grund, warum sie nicht gemeinsam Software entwickeln, ist, dass ihre Ansichten zum Design völlig unterschiedlich sind. Die Entwicklung von Software ist sowohl Kunst als auch Wissenschaft. GNOME, KDE, Unity und jeder andere Desktop, an den Sie denken, wird von Personen entwickelt, die das erstellen, was sie auf dem Desktop sehen möchten.
Und obendrein, wie ich bereits angedeutet habe, basiert dieses Zeug auf verschiedenen Frameworks. GNOME verwendet GTK, KDE verwendet QT usw. Wenn Sie alles für dasselbe Framework und dieselbe Umgebung erstellen, passt es sehr gut zusammen und läuft normalerweise etwas besser. Die Software "in der Familie" zu halten, hilft auch in diesem Aspekt der Entwicklung.
Ich verwende nur den Standard-Ubuntu-Desktop (Unity) und es ist mir normalerweise egal, ob eine App KDE- oder GTK-spezifisch ist. Welche Software für mich am besten funktioniert, werde ich verwenden. Mit Ubuntu und Linux im Allgemeinen haben Sie immer die schöne Wahlfreiheit!