Because it's actually a lot easier to do cross platform in C++ than in C#, especially when factoring in different phones - Android, iOS, Windows Phone - and other desktop platforms.
You write a base platform abstraction layer in C++ & the native language, and then the rest of the game can be written in generic platform-agnostic C++.
You write a base platform abstraction layer in C++ & the native language, and then the rest of the game can be written in generic platform-agnostic C++.