Well, part of it is due to simple biology. Twelve-year-old girls aren't all that big, so she has less thermal mass to begin with.
But there are things you can do to make sure she stays warm. Good-quality long underwear is essential. I like wool. The Icebreaker 200 Oasis Crewe ($65) is an excellent piece. Also, make sure she has warm socks, light gloves, and a snug warm hat. At bedtime, brew up some hot chocolate that will put something warm in her stomach, along with some calories.
I think the sleeping bag is okay. You could add a liner to it, such as the REI Lightweight Fleece Bag Liner ($45). That extends the comfort range by ten degrees or so. Then, fix her mattress. If she has a true air mattress, then she has almost no insulation under her, just cold air. So do one of two things. Either swap it out for an insulating pad (Exped DownMat, which is a down-filled air mattress, $130). Or, throw a light foam insulating pad over the air mattress. Cascade Designs Therm-A-Rest Z-Lite ($29) would do nicely, adding several R of insulation values.
A plain ol hot water bottle also can do miracles.