If you ask if you can help and the host/hostess says no, accept it. Some kitchens are just too small for large numbers of people to 'help.'
Don't volunteer to bring a dish you aren't sure you can make well. If you burn everything you put in the oven, don't volunteer to make a pie. If you forget the sugar in baked goods, don't volunteer to bring them.
Holidays are family time. You don't have to love everyone in your family, but you should be able to exchange a cordial word with them. Showing a bit of interest in their life is a good start.
Food is great, but have something else for guests to do, especially if there are young kids involved. Nothing is more painful for kids than being expected to sit around all day. Set aside an area for them to play or do something. It spares you, your other guests and the kids a great deal of headache.