I don't think lack fo requirements gathering is as much of an issue with open source software development. If you propose your changes to your mailing list, you'd get a lot of feedback on it. People can also be pretty vocal about what they'd like to have--even though they may not be able to do anything about it.
That, unfortunately, is the real problem of open source software development: how to address the needs of non-technical users. It's not a problem of development processes but rather one of economics.
The easiest way to think about it is this: if 100,000 users each would pay $10 to get better-looking user interface, how would an open source community make that happen?