If you wish to give the gift of a cat or dog for Christmas, give a gift coupon you make attached to a stuffed animal or an animal toy. Wait until after the holidays to get the new pet, and consider shelter or rescue animals FIRST.
I absolutely agree about waiting until after the holidays. The shelters are overrun with pets that people surrender that they've gotten for holiday presents and either didn't really want or cannot handle.
Before giving any animal as a gift, please don't make it a surprise. Make sure the recipient is mentally, emotionally and financially able to take on the commitment of a pet. And, in most cases, shelters will insist that all members of the family are in agreement on taking on the pet and that the pet is permitted where you live/rent, taking into consideration landlord agreements and HOA restrictions.
Please remember that they are not accessories or any decision to be made on a whim. Taking on a pet should be done responsibly and with the knowledge that it is yours for the remainder of its natural life. If the recipient can't seriously commit to that wholeheartedly, a stuffed animal is a better option.
Below: my Christmas present from 2006, taken this year, and mine for life.