i am having a hard time replicating your problem. Do you already have an object in your xaml named "mygrid" maybe?
as for event handlers ... the cloning method I proposed is a deep clone based on XAML serialization/deserialization which I thought would work.
Maybe what you could try is do a simple "MemberwiseClone()" on your UIElements or write a custom function to reattach events and such.