It's really hard to argue that there is some clear two-way flow for Canonical/Ubuntu (in terms
of contribution) in the same way that there is for Red Hat or Novell. For example, SUSE employ
some 15 developers to work on OpenOffice.org alone (not even considering the other major
desktop developers in, say, X, KDE, GNOME, etc), while Canonical's _entire_ desktop
development team consist of some 3 developers last time I checked.
Their concentration seems to have always been rather to just re-package Debian's snapshots and
perhaps create a few distro-specific tools, than to work on FOSS projects upstream.