But do you have the advance notice set in your availability settings? Just having it in a rental agreement or stated in your listing wording won’t prevent guests from being able to book without advance notice.
Yes, guests are penalized for cancelling if your cancellation policy means they will lose money. And if they cancel more than 48 hrs after they booked, they don’t get their Airbnb service fees refunded.
As far as your idea of hosts being able to cancel an IB without penalties if they did so within a few hours after the booking was made, you might think that sounds reasonable, but many guests have spent quite a bit of time looking for a suitable listing, and once they have booked, it would be unfair to make them go back through the whole process again just because a host forgot to update their calendar. Hosting is a business like any other and the business owner has responsibilities. If dates show as available, they should be available.
I have never used IB, as I have a homeshare listing, so I want to be able to communicate with guests and read any reviews they have before deciding whether to accept. And I don’t think IB is a great idea for inexperienced hosts, but plenty of hosts do use it and have had few issues with it.