You are looking at it the wrong way: things do not work by default (imagine you got world's first computer, some one has to write the code for it), hence someone has to spend the work on it for it to work.
I thought Linux distros had enough in common that the low level stuff would mostly work the same. It's not the world's first computer. NixOS has the Linux kernel, x11, kde and systemd. Maybe that covers less than I think, but it sounds like a lot.
The high level stuff is the same, and works out of the box. But if you're asking about why Linux doesn't work on some hardware, then it's about the low level stuffs having slightly different optimization and changes and break older code.