I definitely understand the rationale behind the charge. Obviously they are just trying to prevent missed appointments, and I'm guessing this is more common with new clients since there is nothing at stake for them missing the appointment.
However, intent and rationale doesn't actually matter when it comes to consumer law. They could be doing something totally illegal with the best of intentions and still be in violation of the law.
Charging over the phone for a service you have not yet performed does actually seem a little shady to me, from a consumer point of view--especially when you are only doing it to new clients who have never seen your facilities and have to take it on good faith that you can actually perform the services you are advertising.
Personally (seeing as I'm not an inconsiderate craphead), I wouldn't mind being charged a cancellation fee if I'd missed a scheduled appointment due to reasons within my control--even as a new client. I think the same business goal of discouraging no-shows could be accomplished by representing their policy (assuming *this* is a policy that is legal) this way to clients of any kind when making appointments. That is, simply stating to clients when booking, "If you need to reschedule, please give us 24 hours notice. Our policy is that cancellations within 24 hours will be considered a missed appointment, and we charge a cancellation fee of $x for missed appointments." In this case, I was never informed of any cancellation policy, just told that I'd need to pay 50% in order to book the appointment.