pugsandseals you are letting your pupils walk all over you, I'm afraid.
I too teach in school and privately; have done so privately now for 20 years - and have become much firmer over that time.
When I first started out everyone used to change their lessons willy-nilly, not turn up and then say "oh, sorry, he was asked to a friends", get weeks behind with payment etc. The last straw came when a pupil said she wanted to do an exam but could she drop the money in the next week as she didn't have it (after the closing date). I entered her, she then said the child had "changed her mind" and I ended up paying for the exam as she wouldn't! I knew then I had to firm up.
It was an awkward process at first as parents were used to walking all over me and were very resistant. But I stuck to my guns.
Now I run it as follows -
Pupils all have a set weekly slot. Primary school children get afternoon slots, once they hit secondary they come in the evenings. They are often resistant to this but I insist - I can't fit new 6 year old in at 8pm. I've never yet lost a pupil through insisting.
Parents are invoiced by me and pay half termly. Missed lessons are not credited. They have to be paid for, though if I know in advance I will rearrange for a different time that week if I have one. Usually this means if I have another cancellation and I make this very clear to the parents. I am too booked up for people to go on a week-by-week basis. If they don't like it (I had a new enquiry this term who wanted to just come when they felt like) they need to find somebody else less good to teach them.
Parents who really struggle with half termly I do allow to pay weekly, but the moment they come to a lesson and say "I don't have the money this week - I'll try and pay next week" the facility is withdrawn. You can't go into Tescos and offer to pay next week but take the shopping today. It's no different.
I don't demand notice (though the half term's fees are non refundable) because I usually have a waiting list and I don't want pupils coming who don't want to be there. However, I know many teachers who do and it is perfectly reasonable to.
It's your business and you have to earn regular money like everyone else. Firm up, even if it gives you a bit of grief initially. You'll be so glad you did. :)