The difference is in testing and hardware availability.
If there are 1000 different text editors, that's no big deal - I also tend to think having that many text editors is rather silly, but who cares. If you like writing text editors, go do that.
However, having 1000 different drivers for a piece of hardware is a truly horrible idea. Why? Because "one piece of hardware" in reality actually means "several different revisions of the hardware that are different in very subtle ways, and one revision of the hardware might have a bug where all other revisions of the hardware are fine". Think of the nightmare of ACPI tables, broken EDID data, and all those fun things.
By having even two different drivers for the same hardware, you're significantly splitting up your testing base. It's entirely possible that the developers of Haiku never see e.g. a certain weird piece of USB hardware with a strange bug. On the other hand, it is very likely that some Linux person has seen this hardware and added a fix for it to the Linux kernel.
This is *very* different from e.g. desktop applications. They just don't have this kind of issues.
Also, and I feel kind of silly for trying to repeat it again and again and again:
My point is that as soon as anyone tries to usefully depart from linux and create a slick desktop experience (and it might even be usable by non-C experts ) they're denigrated for wasting everyone's resources.
But Haiku is more or less doomed to never become widely useful because of lack of hardware support, and they could avoid that by just using the Linux kernel (or a BSD kernel, or whatever, just *not* something entirely new).
Yes, it's true, you might want to use a different scheduler that's better suited for desktop tasks, or add some other tweaks. But nothing stops you from doing that within the Linux kernel, and you'll still get all the hardware drivers for free.