Because there are too many distributions.
Now don’t get me wrong, having a choice is a good thing. But consider this from a developer’s point of view:
I’d like to make this shiny new app available for Linux. The main goal here is to make it accessible for people without deep Linux knowledge.
Even if you target only the most used distributions, Ubuntu, Debian, and Fedora, you still have to create two (well, actually three) package definition files: an RPM spec for Fedora, and a DEB spec for Debian (and a slightly modified DEB spec for Ubuntu).
Then, even if you did it right, you have to distribute it somehow. You can try to get your package into the distribution itself, but the review process is lengthy, and sometimes you just can’t comply with the rules (e.g. both your package and its dependencies my have a free licence). The other way is to manage your own repository for both Fedora, Ubuntu, and Debian.
This, obviously, called for action, so people invented AppImage. Then Flatpak. And then Snap.
I think you can see the pattern here… This, obviously, makes a lot of software unavailable for Linux, or you have to be a command line wizard to install them locally.
Now, back to the users’ point of view: since <insert-your-favourite-nonstandard-app-here> is not available in Linux unless i have cmdlinefu level 9000, i stay with Windows (or OS/X).