If she cancels or won't be there (she tells me in advance, never last minute), I don't pay. Otherwise, I pay. Her schedule is full and I'm taking up a spot.
She always cleans every 2 weeks, even when we are on vacation. We use house sitters, though, so no worries about lights being left on or anything else. The house needs to be cleaned anyway.
She's been with me for years and I totally trust her.
We text the person and just ask them to skip that week, or come the day before we leave. We only pay for each cleaning done. If the house wasn't cleaned, we don't pay.