If Ubuntu was a non-profit and Shuttleworth's expenditures were in fact a donation into such a non-profit, you'd have a valid point. But that's not the situation.
Canonical is not a charity, Ubuntu is not a charity, and the money Shuttleworth is spending to keep Canonical afloat is not a donation. Canonical is a for-profit business entity that manages the wholly subsidiary Ubuntu project. To suggest that the money Shuttleworth has invested into Canonical and into Ubuntu is a donation is to grossly mischaracterize the reality of the situation.
A would daresay that if the structure of relationship between Ubuntu and Canonical were different....more Mozilla-like where the for-profit was a subsidiary of a non-profit... operations and business focus would be better aligned towards a more straight-forwardly stated social benefit and things would be clearer for everyone on how to ethically move towards that goal.