First off, quit lecturing people about your preferences! Laying into a poor cashier at Target for not using your preferred greeting (because they are psychic you know! And not at the beck and call of corporate regulations!) makes you a bad, rude person. Full stop.
Secondly, please expect that in fairly neutral environments like stores and businesses, people are going to go with the most neutral greeting possible. Also if you live in a fairly diverse city, you are probably want to stay on the neutral side with most people. 74% of Americans may be some variety of Christian (from heavily practicing to not-practicing-at-all), but that is not the case in places like New York City, so you are much more likely to run into people who don’t celebrate Christmas than in a small town where you know most of the people do. Even Miss Manners points out that Happy Holidays is perfectly reasonable given that almost everyone gets Christmas Day and New Years Day off from work, thus everyone should have happy holidays.
There is also no reason why you can’t keep your greeting neutral with strangers and deck the halls with all the Merry Christmases you want with people that you know celebrate. You don’t have to say the same thing all the time. It’s okay.
Also, I give people a break to say Merry Christmas on ACTUAL Christmas day. It’s one day and it’s a fact that it is indeed Christmas, just like someone saying Happy Solstice on the 21st or Happy Valentine’s Day on February 14, even if you don’t personally recognize those holidays. I think people are less bothered by it than if they have to hear Merry Christmas every day from Thanksgiving until December 25.