The bug
Mob heads will only drop the first time the /damage command is used, even though the charged creeper entity is still in the world after the /damage command is used.
Video:
https://www.youtube.com/watch?v=LAG-VTj59yQ
Reproduce steps
Summon a charged creeper.
/summon minecraft:creeper ~ ~ ~ {powered:1b}
Summon a wither skeleton.
/summon minecraft:wither_skeleton ~ ~ ~
Use the /damage command:
/damage @e[type=minecraft:wither_skeleton,limit=1] 30 minecraft:explosion by @e[type=minecraft:creeper,limit=1] from @e[type=minecraft:creeper,limit=1]
It is found that the first use of the /damage command will drop the mob head.
Summon a wither skeleton again.
Use the /damage command again.
Found that the mobs no longer drop their heads, even though the target charged creeper entity still exists in the world.
Confirmed.