What's unsaid here is that uTP is an undocumented protocol that isn't available to other BitTorrent implementations like Azureus/Vuze, potentially making them second-class citizens.
from the bittorrent.com comments, a quote from a high-up at BT:
Simon Morris
Posted October 8, 2009 at 5:52 pm
As a matter of fact µTP is indeed a replacement for TCP, so we think the name is appropriate. You can check out standardization work which we’re chairing at the IETF called the LEDBAT working group
Don't forget: BitTorrent is a business that Bram Cohen built. Their goal is to sell their product, in this case, uses of BitTorrent the protocol to companies. They can hardly do this if BitTorrent is being blocked everywhere.
If they have special BitTorrent client to BitTorrent client information, it could be for use in their custom software that companies would use within their own product, not necessarily for public downloading usage (ex: WoW's software updates using BitTorrent).
I don't know if this is actually the case. But why couldn't it be a possibility?
...The way the client talks to other clients has had to be completely re-built. As a side effect, because the new protocol so different, it is practically invisible to some of the nasty traffic shaping techniques that some ISPs have been using.
They're not even going to pretend other client will be able to support it in a timely fashion. Backwards compatibility is out the window if they really did implement everything documented in the article.
It appears to me that if you use Vegas on your Linux machine then all of your TCP connections use Vegas, which will make you a second class citizen to all the Reno folk out there on the internet.
If you assume that your own uplink is the only bottleneck to be dealt with (say you are serving torrents over a DSL line) then this is reasonable, but I don't think I'd want to yield to all TCP users everywhere with all of my outgoing traffic.
There are also some scary comments in the notes from before it was rolled into the kernel, like the code doesn't handle route changes.
I can see why a vendor would choose something over which they have control.