Really depends on how one handles the contract & client involved. My personal experience with cancellations have been positive, and I've had ex-wedding clients come back to me with commercial work thereafter.
As long as they understand why a deposit is necessary, and on what grounds it will be forfeited, there shouldn't be any problems. I doubt clients who don't come back because of the cancellation charge, value the work or service that we provide. We move on.
I agree that business is indeed tough, but that doesn't mean we should allow our business practices to degrade either.
Just my point of view.