Is it mejilla or cachete? Are there dialectical differences? If yes, what are they and which word is used in what context?
In general, mejilla is the anatomic term for cheek, cachete is rather informal. Cachete can also refer to a smack on the cheek as well as to the buttock. So, without context cachete would be ambiguous.
The actual usage of the words differs between countries. When referring to the cheeks, I guess mejilla is more common in Spain, while cachete is more likely to be heard in countries in South- and Central America. I don't think there's a great difference between those countries when referring to a smack or to the buttock (i.e. they use cachete with equal frequency).
Cachete as buttocks is mostly seen in Central and South America; in the Caribbean and Spain, cachete can mean cheek or having something for free. Like, "llevatelo de cachete", which means, for free. Take into account languages grow over time and become sort of territorial and dialects, that's where the differences come from. For example, in Dominican Republic and Puerto Rico, due to the continuous contact with the US, there are many anglicisms that have been accepted. Like "elevator" is properly translated to Spanish as "ascensor", while "elevador" is nowadays accepted and used in proper Spanish. Same with many other words. Then, Central and South America are so close to Portugal they sometimes get mixed words from Portuguese as well and beautifully keep many native words which have become part of their Spanish. All languages go through this. If we go to Italy, there's one proper Italian language known by all and one dialect every block different than the last block and so on. Is just human development I think.