And since you can't generally re-book a wedding on short notice, the closer you get to the actual wedding, the higher your cancellation fees should be.
I shoot mostly commercial work, and the cancellation fees step from 0% with > 72hrs notice, to 50% with > 48hrs notice, to 100% for 24hrs notice or less. Also, any expenses that were paid as part of the project the client is also responsible for in the event of a cancellation. Generally we get a 30% advance on a project to cover these out of pocket expenses.
Commercial photographers can re-book work with short notice, unlike a wedding. So if a tiered cancellation policy is used, it makes sense to make it months and weeks, and not days and hours 
Most wedding photographers I know ask for a non-refundable deposit up front, and that is their cancellation fee. Many take it a step further and ask for a bit more the closer they get to the wedding date, which is also very fair. If they booked a photographer, then canceled, they denied him/her of their normal income for that day. Its only fair for the photographer to recoup some of that income, especially if canceled on short notice.