No idea, but probably all those play a role. Almost the entire Carribean has a similarly high homicide rate, including the Virigin Islands, Haiti, Cuba, the Bahamas, Trinidad, Puerto Rico, etc. Perhaps it's as simple as the killing season in the tropics being twice as long, so they kill twice as many people per season.