It isn't that simple: Microsoft regularly licenses third-party code (often in source form) whose rightsholders probably won't agree to their source being made available.
Furthermore there isn't much of a business case to be made to Microsoft's execs about opening up the source: it requires time to clean up source for human consumption and for what gain? It'll also come back to bite them if they ever choose to re-start a product in future.
You say they "should", as though it were a moral imperitive, but Microsoft is an amoral company: shareholders come first, then profits, then consumers, then finally lowly employees's interests (who would probably be the strongest advocates for releasing their own work).
A case can certainly be made for opening up the source of games (Microsoft has done this in the past, see MechCommander II, other companies have as well, see: Parallax's Descent, and FreeSpace, or id's Doom and Quake) since it brings talent to the attention of the company, but I don't see any bright 20something student chipping away at MSMoney in their spare time, how's that for a chat-up line?
I suppose a potential business case to be made by opening up the source is to encourage third-party development on their own software, which they can then re-release themselves in future, but no-one would willingly contribute to a product that directly generates profits for another party and nothing for themselves. If they used the GPL (or some other copyleft license) then it might work, but it's a double-edged sword as another company could retail it. Microsoft could take the source and re-close it because they would no-longer have all of the copyright over it.