As one of the other moms said - you do seem to be doing what's best for your child - ultimately that's most important. I'm sure it breaks your heart - but the long term goal of an emotionally healthy child is your priority. Keep at this - as much as you want to wring your ex's neck.... You are doing the right thing - no matter how tough it is.
But since your dauughter will be with your ex and his family on Christmas day can't she be with you on Christmas Eve and Christmas morning? Create new traditions for the two of you since you'll probably have this situation every other year. Go to a candlelight church service together on ChristmasEve, and maybe make special cookies together (or make them ahead of time and then two of you can "paint" the icing on them christmas Eve). Then on Christmas morning before you bring her to her dad's house have a special breakfast - maybe even some of those cookies that you made the night before. You could even let her make up small packages of the cookies that she could give to her cousins & grandma on dad's side of the family the next day. It allows her to remember and tell her grandma & cousins about the special time she had with her mom. (And it reflects well on your to his family too - which isn't a bad thing either.)
I give you a lot of credit for doing what's best for your child and sacrificing your preferences. While your child can't see this now since she's young, she will recognize it when she's older and appreciate it, and love you all the more for it. Trust me - I was one of those children and I can assure you that kids will realize one day (for me it was about 17) what mom has done for them. Kudos to you mama.