Ok, rubbing their noses in it REALLY doesnt teach them anything! It might make you feel better and get rid of some of YOUR frustration, but it REALLY doesnt help.
I know its a bit more hassle, but try taking her out for a little walk before bed as opposed to letting her go out in the garden! you may find she needs to get moving a bit for her to go for a poo!
Also, youve done the right thing by restricting her food in the evening.....
Speak to the vet as she may have a deeper underlying issue that you arent aware of.
Also, a crate may well be a good idea, dogs dont tend to poo where they have to sit.
Good luck!