Welcome to Aquarium Advice!
When you say a while, how long? Development of guppy fry normally is around 28 days. If its been longer, your females could be holding for a few reasons.
One reason, as you guessed, is your water. Aside from the temperature, a guppy won't drop (aka give birth) if she feels the water quality is not right. This can be due to several factors including your ammonia, pH, nitrite and nitrate levels.
Another possibility for the Long pregnancy is that your females don't feel like they can find an area in your tank where the fry can hide (dense planted areas) In a 3 gallon, this can be tough considering there is not a lot of room for the pregnant guppies to feel safe enough to drop. Fish have some emotions too! And if they feel stressed (not enough space) they won't drop as well.
The heater was a smart choice, and if possible, a larger tank will also make your fish a lot happier, and well as thrive.