I would probably place C# as significantly more
"liberal" than Java
Only if you look at these languages in isolation from their virtual machines and operating systems on top of which they run, also disregarding the communities around them.
Java as a language is more conservative, definitely, but the Java ecosystem is definitely more liberal. As proof, compare Java's open-source community with .NET. Or compare the maturity of alternative JVM languages (e.g. Scala, Clojure, JRuby), with the alternatives running on top of .NET ; or compare the web frameworks available for each.
This is the reason why, when faced with a choice, a "liberal" developer will most likely pick Java over C#, even if C# as a language is more liberal.
Only very brave--very liberal--companies are going to
use Haskell or Scheme in actual production
I do not think this is an issue of liberals versus conservatives. It's actually an issue of pragmatism versus idealism.
I'm pretty sure that many people wanted to use Haskell or Scheme in production, but then they'd shoot themselves in the foot, because the available libraries and tools for a language are far, far more important than the language itself. That's why Perl was so successful in the first place, because Perl hackers were getting shit done, then contributing to CPAN, which allowed other hackers to get their own shit done, and so on.
On the other hand I'm seeing lots of startups trying out and even using Clojure and Scala in production, at least for parts of the project. That's because these languages have all the Java libraries at their disposal, even if the languages themselves are still immature.
Don't mistake pragmatism for conservatism. That would be a mistake.