I never really changed my diet from when I was a young child. I took a slight detour for a few years, but only slight.
So I find your threat very interesting. I have helped friends stay on their diets by coming up with yummy recipes that follow their restrictions and bringing them to social functions.
I introduced my co-workers to cut up vegies, with more or less healthy dips, whole grain crackers and breads (and I mean "whole" grain), and cheeses as snacks instead of the cookies, cupcakes and chocolates most of them would bring in. I regularly brought in salad fixins from our garden, with simple oil and vinegar dressing or just seasoned rice vinegar. Our cubie became quite popular.
I find as long as people think of a diet as a temporary restriction on food, they will fail. It needs to be lifestyle change. Cheating allowed within reason.
Free, I also like your comment of a person's family origin playing a part in what they should or should not eat. Consider your ethnic background and try to eat the food that your ancestors would have eaten 200 or more years ago. That of course is difficult for some to figure out. I have a friend who is African, Japanese, Iroquois and French.

She has a very difficult time getting her diet right.
Holidays are only a problem for me, when someone tries to push their artificially flavored, colored and sweetened cake made with white flour and nothing real down my throat.
If it is something I like, I eat it. I just eat a small portion of it. Sometimes I pig out on something, but then when I pay for it the next day, by not feeling up to par, it gives me the motivation to stay away from it for a long time.

Once you get used to the taste of real food which is healthy, you will find that the other stuff just doesn't taste as good as you remember. And if it does, allow yourself the occasional treat.
I am allowed the equivalent of one slice of white bread a day. That might be a serving of regular pasta or white rice, or I save it up for when we have garlic bread with our spaghetti and eat 1/2 the loaf
