Well, like you pointed out, you can already do C++ in Gnome in the form of GTKmm bindings.
While C++ is not a 'official' language for Gnome it does end up getting used in a lot of Gnome-related stuff. Abiword, I am told, does C++ and is part of Gnome Office.
The 'official', or maybe better called 'Tier 1', languages for Gnome right now, as in the stuff that Gnome ships with by default, are going to be C, Python, and C#. Then there is a Gnome-specific language being created called Vala.
Of course bindings for other languages are avialable, like Java or Ruby.
The advantage to maintaining the low-level stuff in Gnome as C is that, well, C is can be made to be very fast and thus work is on the low level in terms of optimization and memory usage will extend greatly and affect all Gnome applications (so it is time well spent compared to the typical time spent on full sized C-only applications). Maybe more importantly, it is (relatively) easy to use C to create bindings for most other popular languages. It is still possible to do it for C++, but I think (in my very limited experience) that it is not nearly as nice especially during the compalation process. The third possible benefit to sticking with C is that your dealing with a mature code base with lots of years worth of bug chasing and optimizations.
Feel free to disagree, of course. It's not like I am a expert on the subject. This is all just a impression I get.