Her off hours are absolutely none of your business.
Address the issues directly. As others have said it doesn't matter why the problems are happening, deal with the fact that they ARE happening.
To put it simply she isn't meeting the expectations of her job. Arrange a meeting where those problems are addressed. Even the chance that she wants to leave early to get to another job. The other job isn't your concern.. the fact that she wants to leave early is. Let her know that you will no longer be accommodating her requests for extra time off. If an appointment is scheduled (doctor, etc.) she needs to ask when it is scheduled and give you as much notice as possible.
It sounds like she has some personal time she can use. Fine. When that is gone, it's gone.
Let her know that if she continues to fail at meeting expectations, you may have to consider finding a replacement.