Years ago it was because most people believed it was the birth of Jesus.
Nowadays a lot of people have become athiests and say they don't believe but still celebrate christmas. So many cultures don't accept christianity, yet still celebrate. So why have christmas?
I see no reason to reject the officially adopted excuse for a 'knees up' just because I can go do my own thing at some other time. To be contrary is to just create hassle for no useful gain. Sure it is a commercially driven thing, but if I wish to enjoy something chances are it is going to cost anyway.
As usual, Dr Who nails it.
"On every world, wherever people are, in the deepest part of the winter, at the exact mid-point, everybody stops and turns and hugs. As if to say, "Well done. Well done, everyone! We're halfway out of the dark." Back on Earth we call this Christmas. Or the Winter Solstice. On this world, the first settlers called it The Crystal Feast."