There are actually several problems for desktop linux, or more exactly, for linux on the home computer.
Some are independent of linux itself: the lack of drivers, the lack of some very common software is external to whatever the linux devs (both linux the OS and linux the distributions). I would even say there are very good at compensating it, even if it is not sufficient.
Then there are the things that are linux dependant, such as the publication of software, the updates, the choice paralysis etc