That is just the thing,We all have different things on training our dogs!I believe that treats should be given when the dog has done something right,But not when they have done something wrong like Messing on the bed!Just the other day me and my trainer had difference of opinion,My Newf takes off if you go to go out the door she will rush you and get out and be gone for half an hour my trainer says to me give her a treat when she does come home,and there is no way i would do that.

She did something wrong im not going to praise her for it.I do not yell or hit my dogs but when she came in i put her in her crate and that is punishment in itself because she hates her crate.
Given she is a year old they tend to still be like a child,they want what they want and that is it.
As for my Border Collie i have never had any problems of her acting out other than the time she wet the bed she was 8 weeks old,it could have been numerous reasons on why she did what she did.but it only happend once,Some people say rubbing there nose in there mess,Some people might use that ,but i would never do that i think if i was a dog in that position i would not like that very much and it really puts more work on you ,Youd have to turn around and bathe the dog right after.
I'm not saying i know it all on dogs but i have had many in my time,and i know what works for me just like the rest.And some things im still learning!

All of us are different in every way and when there is post like this you are going to hear different things,