I think it is oversimplifying things quite a bit to say that people should be happy because they are getting a great product for free. There are lots of great products which are free. Part of the angst you hear about in the community is because members in an Open Source community want to be involved, to feel connected and empowered.
I have been to many websites and used many products. I will often run into a bug or have an idea for a feature that would make the product better. But I often get frustrated because I don't have a mechanism that allows me to solve my problem. Often I can write a bug report or send an email, but rarely is my issue actually addressed, and certainly not in a reasonable time frame.
One of the reasons that large communities build up around Open Source is because people want to be able to help; to contribute to making the product better. Maybe it is by writing documentation, or fixing bugs or submitting code for a new feature. Helping actually gives these people a sense of accomplishment and satisfaction and is in itself a form of reward. When you prevent people from helping who have the skill, time and passion, then they can get frustrated, and sometimes, if they get frustrated enough, they leave the community altogether.
So, my question is why shouldn't DNN Corp. accept the offers of help? I know that you cannot rely 100% on getting volunteers to do everything. But there is a lot that volunteers can and will do, and if it is good for the product, why would I not want their help? Does it require more management and coordination effort? Sure, but I think the trade-off is worth it. And so do thousands of other Open Source projects.
If it weren't for volunteers and the Open Source community, DNN would not be as widely used and as successful as it is today.