I'm of the mind that you do what is required to be there. No crying about bad weather, children, car/commute trouble, etc... You take the steps required to do the job you agreed to. PTO at most companies I've worked is plenty to cover a reasonable level of near death experiences, surgery, hospitalization and so forth that may occur. Firing someone for not showing up frequently because she is caring for a child is no different than the guy who doesn't show up because his car is always broke, or he's always sick, or there's always a crisis with his house, or legal issues, or whatever. All these reasons for chronically not showing up come down to choices people make.
Two options that I see...
1. Warn then fire
If the work this person does is such that she needs to be there all the time and not being present is detrimental to the company then you have an unreliable employee and should give warning, discuss possible options (come early/late leave early/late, work remotely, etc.) and fire the person if continued missed work affects the business.
2. Unpaid time off
If the missed days are not affecting the business (you implied it was though) then you can allow unpaid time off or consider changing this person to part time with an easier schedule for her.