It's not Ubuntu that can't do it. It's the hardware manufacturer that refuses to do it.
I personally choose to vote with my feet. I only buy computer hardware/software that works with Linux. If someone refuses to support Linux, they don't get my business.
If everyone does this, eventually everyone will support Linux or go out of business.
There isn't anything that Linux can't technically do. It's simply a matter of who is willing to support Linux.
Thanks for the explanation, but I've written (very simple) Linux device drivers before, I am aware. :) But my point was that you are making a distinction that simply does not matter to the end users that are under discussion. That a hardware manufacturer doesn't produce drivers for Linux doesn't change that, to a user, "Windows can do this and Linux can't."
It's great that you buy stuff that works with Linux. Linux's problem for normal people is that it doesn't work with everything. Windows does work with everything that a normal person is likely to run into and OS X comes pretty close to the same.
When my wife sees that her iPhone is a pain to connect to the computer, to her car, can't mirror to our TV, etc..., yet her Android tablet does perfectly, she doesn't blame the computer, car and TV...
This mindset is toxic because it does not adequately think about the end user. I mean--drivers? What's a driver? Why do I, a user, care that it's difficult for Ubuntu to do something that Windows does? It doesn't work, that's all I care about.