I don't think you are being too harsh. There are all sorts of people in life who had rough, very rough, childhoods. At some point, you stand up and be the adult. You decide for your own child to break the chain and do what's right.
She's not a child, and treating her as such will only worsen the situation.
Hugs.