Try not to over-cook the ham. Baste the ham often while cooking and use an internal meat thermometer to cook until the internal temperature is reached.