The designers of Parrot, the Perl 6 virtual machine, think not and have struck out on their own. "Why not compile to JVM/.Net?" the Parrot FAQ asks itself. And it answers: "Those VMs are designed for statically typed languages."
The irony about this is that the statically-oriented VMs are actually very dynamic-oriented under the hood. Techniques perfected for dynamic languages turn out to be just as beneficial for running static languages. The static language syntax just requires more hoops to jumped through to get to the dynamic features. Even C++ is an appropriate target for dynamic runtime techniques.
Static languages have been gaining more dynamic features for years... either by circumventing the type system as with Java and C#, or by strengthening the type system as with Haskell and ML.
One way or another, the future is dynamic.