Apparently I was wrong. The Microsoft Community Promise is legally bound.
From the Microsoft Community promise FAQ
Is this CP legally binding on Microsoft and will it be available in the future to me and to others?
Yes, the CP is legally binding upon Microsoft. The CP is a unilateral promise from Microsoft and in these circumstances unilateral promises may be enforced against the party making such a promise. Because the CP states that the promise is irrevocable, it may not be withdrawn by Microsoft. The CP is, and will be, available to everyone now and in the future for the specifications to which it applies. As stated in the CP, the only time Microsoft can withdraw its promise against a specific person or company for a specific Covered Specification is if that person or company brings (or voluntarily participates in) a patent infringement lawsuit against Microsoft regarding a Microsoft implementation of the same Covered Specification. This type of “suspension” clause is common industry practice.
The core of Mono consists of the C# Language Specification (Ecma 334) and the Common Language Infrastructure (CLI) (Ecma 335). Unless you're using the Mono implementations of ASP.NET, ADO.NET, WinForms, etc, you're legally protected from Microsoft.
At the end of the day, if you don't feel comfortable using Mono, don't. Like you said, there's plenty of options for software development on Linux.