If you want to get the problem under control then you must treat failures and late cancellations seriously. So often I hear receptionists forgive failed appointments and say: “No worries. When would you like to come again?”
People who are unreliable will not change unless they are forced to do so. I once saw a practice where a lady had racked up 20 failed appointments over several years. If you multiplied the practice hourly overhead by the time this woman had wasted then she had cost the practice literally thousands of dollars.
So, how do you turn an unreliable patient into a reliable one?
The first time a patient fails don't say “No worries.” Instead say “You wasted 40 minutes of the doctor's time today. If you can't make please give us a minimum of 24 hours notice. Is that OK?” Let them know that wasting the doctor's time is a serious matter and get them to agree to give you notice.
The second time that they fail you say to them: “This is the second time you haven't turned up for your appointment. If you would like to continue as a patient in the practice you need to pay a $100 non-refundable deposit to book your next appointment.”
Get over your fear of losing an occasional patient. You will lose some but they will be the time-wasters who are impossible to service profitably.