Yeah, that's a trick drivers play on customers so they don't take a hit to their rating. If Uber catches a driver canceling too often, they'll boot them or freeze them from picking up more fares. (Conversely, if a customer is doing the same thing too often, a similar penalty of fees or the like will happen to them as well.)
So next time they try that, feel free to hold your ground by using Lyft instead or something. You don't have to cancel - they must, by their own rules, either cancel themselves, or pick you up.
I had an even sneakier issue on a full fat Uber (not X) fare where the driver called me, asked me where I was going, told me he'd be there soon (location 5 minutes away), and just never came (15 minutes). I didn't know what to do with that as I actually did want to go home so I just cancelled and re-requested.
You can see exactly where the car is on your phone! I admit, not a great experience but certainly rare and obviously the sort of thing that Uber can minimize and regular taxi companies cannot.
Sure they can; I've had an Uber driver call me after accepting the fare to tell me to cancel and re-request.