ubergirl, what a great post and a great description of how to re-frame the issue. I had to come to a similar realization myself. I finally turned it around by just telling myself that the voice in my head is my inner two-year-old. She can scream and throw a fit for the cake all she wants, but I am the adult in charge and *I* decide who gets cake, and when. Is it the birthday of someone in my immediate family? If so, I can have a piece of cake. Not 2 or 3 or 5 pieces; one piece.
You should hear my inner two-year-old when I go to Safeway. She is ALWAYS throwing a tantrum in the bakery department, trying to get me to buy carrot cake or a box of cookies. But just like I did when my own boys were toddlers, I have to be firm with her and remind her that cookies and cake are not healthy foods and we won't be getting any today.
Just because part of my mind wants something, doesn't mean that I have to relent and let it happen. Will I have some cookies during Christmas? Absolutely! My sister makes awesome frosted sugar cookies and I WILL be having a couple. But frosted sugar cookies are a Christmas Eve treat, NOT a daily treat. Carrot cake is for my birthday, not for every trip to Safeway.
This way of thinking has been really good for me. Because I'm not telling myself "No" or "Never!"....I am telling myself, "Not today." And that works for me. Usually.