Hi OP.
Firstly 10:30am until 1:00pm break is completely unacceptable. That needs to be addressed ASAP. I can't help but feel sorry for the other two employees who (as much as you might not like to hear it) will feel as though she's getting away with murder. I have worked somewhere where the boss had favourites and they got away with things that I would have never and I resented them for it, and in the end I left the job because it wasn't worth it. If you value the two employees you have and as you say, they're more hard working than she is then it would be very silly on your part to let this continue and have the other two feel less valued.
I would have a very informal chat with her. I don't know the relationship but if it were possible to go for a coffee or something that's not in a too formal setting without her being suspicious that it's going to be a 'telling off' then that's a good start. I will literally script what I feel you need to say.
You can even adjust and put in an email if you feel more comfortable.
'I just wanted to bring up, whilst it's just us two. I've noticed that you're taking a lot of appointments and trips during working office hours and as much as I completely understand certain ones can't be avoided, things like the dentist and the chiropractor were an unnecessary outing. The day you left at 10:30 and came back at 1:00 was 2.5 hours of paid, work time where you weren't even in the building let alone able to do the work. I'm a flexible person but that's something I don't have any leeway with. I'm happy for you to continue taking appointments in work hours, but you will have to either use the hour dedicated to your lunch break or I will have to deduct however long you're gone from your wage. It's completely unfair on name of other two employees that you're coming and going as you please and I own a small business, I can't afford for the amount of work your missing to be paid for, when you aren't doing it, and when you are doing it I don't believe it's to your full potential. I like to think this job is flexible, I like to think I'm a good manager and I like to think that the hours/pay are fair, meaning lots of people would be grateful for the position so if you feel that you're unable to do it to your best efforts or that it's not the career path for you, then I'd prefer you to tell me straight out so that we can both help eachother out. If you feel you need to drop a day and go to 2 days a week instead of 3 so you can fit more time in for your appointments then that's something we can discuss.
I really enjoy you working for me, but unfortunately having a business means I have to put feelings aside and think of the needs of my company'
This will either prompt her to tell you she's fed up of the job and give easier access to fire her/let her quit, or she's going to swallow her pride and accept that she needs to pull her finger out because you're not afraid to fire her. Even if you are - don't let her see that.
Personally, she's got away with a lot more than an average person in another job would and you're being too nice, she's going to keep going if you don't stop.