Nintendo software sells so well because their consoles are aimed at a much broader demographic than Microsoft or Sony's. Banjo N&B, Viva Pinata, Kameo, etc, etc, in the case of Microsoft just didn't sell well because the audience isn't there on that console to get huge sales. The games do come out on the 360 to cater for a younger crowd but they're not interested in the experience the 360 offers, for Microsoft to alter this perception they would need to adjust the marketing of their product.
I think Microsoft tried this gen to target a more mature crowd realising they have more disposable money for entertainment and it has shown in the 360's good attachment rate. Natal is a obvious concession that they would like some of the crowd that the Wii has captured now, which was obviously a market they hadn't considered as existing previously. Sony have from the off tried to cater to a broad demographic but the expense of the console I think is the main reason it struggle to penetrate as broadly initially.