The first time you catch her in the act of peeing in the house grab her by the scruff of the neck and rub her nose into the pee, then take her outside and leave her out for at least half an hour. Repeat the process untill she stops, it should not take long. If you don't catch her in the act of peeing there is no point in any punishment. Dogs in general are not smart enough to accosiate past crimes with current punishment. The crime and punishment must be simultaneous,
Tough love, but has to be done
Actually this is exactly what not to do!!! never punish the dog for an accident,the pup is only 3 months and still doesn't have much control over it's bowel or bladder. After each meal take the pup out,she's too young to use a dogdoor although you should encourage it's use,just don't rely on it.
If the dog has an accident,clean the area and take some of the paper,cloth,whatever you use,outside and let the dog smell it,you can even train them to use a certain spot if you choose. Remember the dog is still a baby and will behave as such,you need to be on top of things,after it wakes up take it outside,after some play time take it outside. If and when the dog goes outside,praise it to no end tell it it's a good dog. This will work in no time at all,before long the dog will get the idea and will go to the door after it wakes up,is done playing or after it eats. Getting it to use the dog door may take alittle longer but as long as you don't force the dog,it's easier to tempt the dog with treats anyways.
Simply get it's favourite treat and hold it infront of the dog to encourage it,then step outside and open the door with the treat in hand,then encourage the dog to get the treat but make it go through the door,before long the pup will be used to the door and will likely come and go as it pleases,if that's what you want.
And lastly,get a cage and cage train the dog during the housetraining part,you can use the cage or not after but the idea is to confine the dog to it's bed,most dogs wont mess in their beds.As soon as you let the dog out of the cage,take it outside!
If you do this and use the soiled paper,this gives the scent the dog needs to go! You should have the dog trained in a week to 10 days if you follow this course.
I have over 30 years raising,training and breeding dogs under my belt and have never punished a dog for an accident as mostly it was my fault for not letting to dog out often enough,and they are babies,you would rub a childs nose in his mess would you,then why would you want to do that to a dog,it's totally unneeded!

PS: Batty I don't often disagree with you but this time I have to!