I think it's partly a structural problem.
I like solving problems for other people. But when I'm using open-source software, the only problems I'm really aware of are the ones I'm having.
In a commercial setting, I'm very motivated by user tests or data that demonstrates problems people are having. I've seen a lot of other developers get excited about that, too. Fixing things is fun when you can see that your actions actually help somebody.
But I've never seen an open-source project that makes it easy to get engaged in that fashion. The closest I've seen is users asking support questions on the mailing lists, which is a pretty small slice of users these days. Plugins also seem to provide a nice feedback loop like that: you make something for yourself, you throw it out there, and you see people installing it and commenting.
But broadly it seems like an unsolved problem in consumer-facing open source.