Why didn't they re-write it in C#?
There are some aspects of C# (such as value types) that can give an advantage of idiomatic C# over idiomatic Java, but for anything performance sensitive you aren't going to write idiomatic code anyway, you'll be writing pretty convoluted code with SoA instead of AoS and so on.
As for the respective VM:s, the CLR vs the JVM, the performance differences are pretty small. You wouldn't rewrite from Java to C# for performance.
Can you point to any compelling evidence that either language is faster?
LOL. Benchmarks and citation please.
It always take a few generations to move languages in game development.
Assembly -> C & Pascal & Basic dialects -> C & C++ -> maybe C#, Rust, D....