Poor quality of development and service is a very common problem all over the place - in retail stores, at a mechanic, lawyer, doctor - you name it. Why should software development be any different?
So what a user to do? Just like you learn signs of possible trouble in the aforementioned, you do that with DNN vendors - is there a site that looks decent, does explanation on the site make sense, feedbacks on snowcovered are good, etc. These are all signs of a) attention to business (not some silly think slapped together for the heck of it), b) business sense/usability - if the site is impossible to navigate, probably the module ain't going to be much better).
You should know that there are some exceptions - there is one vendor with excellent modules and absolutely ridiculous site - the result of a programmer not realizing that design is no less important than functionality (designers make the opposite mistake). Another exception is actually the exact opposite - the site is nice but all modules are convoluted, bug ridden, horrible service, etc.
But these are nonetheless exceptions. Check out ventrion.com, smart-thinker.com, inventua.com - clean sites, pretty easy to navigate, forums, faqs, etc - these vendors you can buy from without worry. These are just a few of 10-15 vendors I regard as highly professional programmers and good businessman. (I am sure there are more, but these I can vouch for)
Finally, the DotNetNuke "Seal of Approval" is a good sign, too - at least the module will most likely uninstall properly :)
I wish people (buyers) would be more active in leaving a comment snowcovered, at least, - there is a place to comment on product quality and service. So far, I found that responses are very indicative of the actual situation.
May be we can somehow start a reference site? Test modules and write reviews on them? As to usability, business sense, responsiveness, etc. Count me in...