You just proved my point. For this to keep working you need Charlie to show up with $1,000,000 new dollars.
In a panic, you need to flip this scenario on its head. Charlie is not going to show up and Diana, who got into Bitcoin in 2009 and hasn't done anything since, decides to take her profits on 1,000 BTC. So this system has $1,001 to meet $2,000,000 in deposit demand, assuming neither Alice nor Bob has withdrawn their USD and some Bitcoin hodlers pile in.
Particularly popular liquidity pools eg BitPesa or Coinbase may then be put under pressure to either cease operations, draw down liquidity facilities to buy BTC, or start selling their own assets in order meet demand of BTC holders who want to get out. Those are not good choices.
In this panic, the price of bitcoin drops as Diana dumps her 1k BTC market sell on the book. The USD comes from whomever purchases - there is no liquidity problem.
Why does he need to call you back? Stock market crashes are nothing new. Bitcoins are basically the same thing as stocks in terms of the way they're traded.
No one is saying a price crash isn't possible. But it won't be caused by some liquidity issue, it'll just be people selling off.
Diana can't just "decide to take her profits" at whatever price she'd like. If she wants $1m but Charlie isn't interested, she will have to lower her price until he is. This is how exchanges work, cryptocurrency or otherwise. If a stock falls to zero, do you think that Etrade dips into its own assets to provide an "off ramp" to its customers that weren't able to sell in time?
You're essentially saying that the exchange should artificially prop up the price of bitcoin with its own money during a panic.
Day 1: Alice buys 1,000 Bitcoin from Bob for 1 USD on a street corner
Day 2: Market price on the street corner is 1 Bitcoin for 1,000 USD
Day 3: Alice sells 1,000 Bitcoin to Charlie for 1,000,000 USD on a street corner
The street corner doesn't have to borrow 1,000,000 USD from a bank.
Charlie brings the USD to the trade.