Almost all my bookings are two hours (it's my minimum), but I've had guys book three hours, four, and overnight without having met me before. That's outcalls though, it might be different.
I don't like turning regulars down in favour of new clients, but if the new client has already made a booking what can you do? You don't want to be in the habit of letting people down even if it keeps happening to you.
Amy, if you're busy maybe you can afford to lose a few clients for the sake of deposits. I'd rather work less but always know when I'll be working. Just ask for a fiver or something.