Object.Instantiate NOT duplicating entire hierarchy

I’m simply cloning an object that has a hierarchy (the child object is an animated mesh from FBX import), and though the documentation clearly states that the full hierarchy of instantiated objects is duplicated, this is not happening. The cloned object has no children.

// initialization
GameObject butterflySource;
butterflySource = GameObject.Find("butterfly");

// cloning
GameObject butterflyObject = (GameObject)
    UnityEngine.Object.Instantiate(butterflySource, new Vector3(x, y, z),                                                                    
                                   butterflySource.transform.rotation);

Does anyone have any ideas why an object created from Object.Instantiate wouldn’t have its hierarchy duplicated?

I still don’t know what the problem was, but simply changing the name of the object from butterfly to butterfly_clone_source has resolved this issue. I can’t find another “butterfly” object anywhere that could have been causing this problem, but it’s resolved nonetheless. Thanks everyone for the suggestions.