The bug
The clearCustomName()
and hasDisplayName()
methods in the ItemStack
class are inconsistent with getDisplayName()
as they ignore the LocName
NBT Tag used for custom translated displaynames.
Linked issues
relates to
Comments

Also just because the MCP mappers named them in a way that would indicate they're related doesn't mean Mojang did.
hasDisplayName()
only checkingName
is what makesLocName
-named items not render in italic (which is needed for e.g. villager treasure maps). I'm pretty sure that, as such, this is intended.