Having worked for both a non-profit and a charity, it is my recommendation that you always donate directly to the charity, and not through any form of solicitation. Most of the telephone calls that you receive are likely from telemarketing companies. It has been my experience (through exploring them as a means of fundraising) that the charity will likely only see about 10% - 25% of the funds raised in their name!! I imagine that a number of door to door solicitations are also done by professional fundraisers.
WRT sharing of lists, it is likely not the charities that share the lists, but the companies that they hire to solicit for them. I always ask to be put on their "do not call" list
To verify that a person collecting at your door is from the charity that they represent, can you pledge a donation, buying time to look into them? Or write a cheque in the name of the charity if it is known to you? I doubt that many scammers would go to the trouble of trying to open a bank account in the charity's name.
I like YMCbuzz's point about the online donation - I use CanadaHelps.org. They are very upfront about the small (3%) fee that they charge, and the rest of the money goes to the charity. I have used them working for a charity, so I can vouch for how much is sent to the charity.