ItemButtonTemplate used to be a template (xml with the virtual attribute that inherited the button widget and added extra "bits" like frames, textures etc. that was automatically "applied" to any other widget that inherited from ItemButtonTemplate).
Blizzard moved ItemButtonTemplate to being an intrinsic (pseudo widget) ItemButton. In both cases they inherit from the button widget adding the extras.
Difference in usage:
Code:
local f = CreateFrame("Button", "MyItemButton", UIParent, "ItemButtonTemplate")
local f = CreateFrame("ItemButton", "MyItemButton", UIParent)