It is incredibly difficult to build a runtime like .NET, especially as it was never designed to be cross-platform.
Just a historical note: The Shared Source Common Language Infrastructure [1] aka "Rotor" is an alternative version of the .net 2.0 platform developed by Microsoft for research/education use. It can be compiled for FreeBSD and Mac OS X 10. Its rather out of date, but maybe shows that MS did make some kind of effort to make it cross-platform.
[1] http://en.wikipedia.org/wiki/Shared_Source_Common_Language_I...