Personally, I would say cancellation is the last resort.
I was in a very similar situation last December. We were support band at what was our biggest gig of the year, a Christmas special.
This was in the Peak District, and our drummer was stuck in slow traffic because of snow. Luckily the drummer from the headliner act sat in for us.
My reasons for not cancelling if at all possible would be - my character (I hate quitting), it sets a precedent for when things next get tough, people have (hopefully!) turned out to see you they want and deserve a show and in my experience from last year are also understanding if you come clean about it.
Obviously it can be a bit rough with a last-minute stand-in, but as it's been said before, if you don't make a pantomime out if it audiences generally don't spot mistakes.