There are other cryptocurrencies (eg Tether) that follow USD (eg 1 Tether is almost always equal to $1.00 USD), to avoid issues with volatility.
I guess another issue is that you'd have to pay taxes on any gains/losses between receiving your crypto and cashing it in for USD, and that would be pretty annoying to calculate manually.
I'm not the biggest fan of crypto but I think it actually solves this problem pretty well. There are probably other solutions too though (like only accept debit cards / payment methods that can't be charged back).