There is no "copy a frame" function in the WoW API. If you want to create a button that's exactly like another button, you have to do it the long way. Create a frame of the same type (eg. "Button") that inherits from the same template (if any) and then set all the same properties, create all the same children and regions, give them the same properties, etc.
In this particular case, you actually
can't use a 100% duplicate of the
PetJournalPetHealButton because it calls "CastSpellByID" in an OnClick script, but an addon isn't allowed to do that. You'll need to inherit from "SecureActionButtonTemplate" instead of "SecureFrameTemplate" and then use attributes instead of an OnClick script:
myButton:SetAttribute("type", "spell")
myButton:SetAttribute("spell", GetSpellInfo(125439))
If you already have a button and just want to add a tooltip, you can just reuse the tooltip functions from the Blizzard button:
myButton.spellID = 125439
myButton:SetScript("OnEnter", PetJournalHealPetButton_OnEnter)
myButton:SetScript("OnLeave", GameTooltip_Hide)