timing is an issue. The hit is only recorded in a given instant, which doesn't always line up with what an individual player might expect for when their hit lands (and even from player to player, expectations vary).
This results in lining up a head shot, keeping the crosshair over the head for as long as you can, but with the twitchy AF animations, the exact instant that the melee attack actually checks for a hit is easily often after the head jerks to the side or up or down.
It is particularly noticeable with the spear and club. The spear because the hit check seems to be just before the end of the animation of thrusting forwards. So your spear might even "pass through" the head at the beginning of a close swing, but by the time the hit is meant to register, isn't lined up anymore. Similarly, trying to launch the attack and drop the crosshair onto the head for the end of the animation (like you might do if you are using the axe to chop an out of reach block...start the swing, then jump so that the crosshair is lined up for the moment the attack is actually calculated) can easily result in the attack calculating before your crosshair is lined up, even though the animation shows a clean thrust to the head.
The club has a similar problem with the delay in the start of the swing, and then the abruptness of the actual motion of the weapon - this makes it hard to predict the exact moment the attack calculates (imagine trying to give someone a high five when you know they're trying to move their hand away....you give a little fake start to see if they'll move, then as quickly as possible, try to slap their hand....that's what trying to predict the club swing feels like...a stutter, then a sudden super fast swing)
Contrast this with ANY ranged weapon. All guns have instant bullet travel time...if the crosshair is lined up when you hit the mouse button, it's a hit...they might still juke it if you were trying to time a specific motion and miscalculated, but there is no element of "click, then wait, then the attack hits the crosshair at some point in the future...which is defferent for each melee weapon"
As far as I see it, there are 3 "solutions" to this problem....from easiest to implement to hardest, they are:
1) tell the players nothing is changing and they just have to get used to it. With enough practice, the delay starts to feel more natural, or at least easier to subconsciously account for. People will still constantly complain, and for good reason, as melee is basically a "delayed fire gunshot" at the point of the crosshair. The anemic splash damage they added in A18 is a mixed bag...it's damage, sure, but it's miniscule and can trigger the rage just as easily as a direct hit. I often finding myself wishing i'd whiffed completely rather than glance (but for a snake or chicken, glancing is a big benefit)
2) make weapon swings instant....have weapons be "pre-cocked," so that when i click, that's when the weapon is landing it's hit. It makes perfect sense for spear, punch, knife, and baton (to a degree). It'd feel weird for sledge and club, but it would solve the immense frustration over the variable delay hit on each melee weapon and the FEEL of "wrongness" over swinging a weapon horizontally right to left, and missing a zombie while hitting a block 1 inch to the left and 1 foot behind the head you were aiming at.
3) make weapons calculate FULL hits across their entire arc for the duration of the swing animation. So, with current animations, spears would have a very lenient hit timing (the entire duration of the forward movement of the thrust) but tighter targeting, while clubs and sledges would have a dynamically moving hitbox that would collide with the first thing in the path. I can hardly even imagine the immense difficulty in making melee combat feel this realistic, and it's probably completely beyond the capabilities of the game, but there is no denying that melee feels awkward with knuckle dusters, knives, clubs, sledgehammers, and spears all acting like delayed-action gunshots at a specific point, rather than swings with a hand-held weapon moving along a set path.
Honestly, TFP clearly recognizes the issues. There is no other reason to put in the glancing damage on melee swings that was introduced with A18, but combined with other new mechanics, it remains both not enough, and occasionally even actively MORE frustrating.
"Fixing" melee combat to keep the delay and timing of a swing, and still making it feel intuitive and "fair" is probably beyond the platform of the game, and it might be time to cut the losses for trying to get the realistic looking melee combat and implementing an "instant strike" melee mechanic. Either making the click be the exact moment the hit is calculated (with slower weapons having a longer delay before they are "ready" to attack again), or even putting in a hold-to-charge, then release-to-instantly-hit (with slower weapons having a longer "charge up" - which would also keep most of the animation for the attacks and make it look nice)