It is a difficult problem. Hosts need to be able to cancel for extreme situations, such as damage to the unit, or some other emergency. Realistically, the vast majority of people who can afford an airbnb can float for an alternative place for a few days, although especially on longer stays, that might not be the case. There should at least be a priority routing inside airbnb customer service to immediately escalate to a supervisor and resolve the situation via an alternative booking, if someone comes back and says "I have nowhere else to go". It sounds like you did not get to that point to find out if they have that, but I can see how you felt like you were in an unstable situation.
It's hard for me to draw a line on what is a reasonable expectation here, but I guess they should try to provide immediate funds for everyone. Since at least a subset of people will not find their current process reasonable, and when that happens, they will find it extremely distasteful.
all the places i travelled to, airbnb had the cheapest offers. in one place where i could not get airbnb because hosts were not responsive (it was christmas, and i was booking on short notice) i ended up switching hotels twice before we found something in our budget range that was barely acceptable, while there were airbnb listings for full apartments in the same price-range.