Two things:

1. Remove the 1st line below. Not needed to set the UserControl.Picture
Code:
        picGraphicsEffects.Picture = picGraphicsEffects.Image
        UserControl.Picture = picGraphicsEffects.Image
2. Add this at top of your routine to see how many times it is being run as your control is being created:
Code:
Static lEntrance As Long
lEntrance = lEntrance + 1
Debug.Print  ObjPtr(Me),"times entered: "; lEntrance
Maybe your routine is running several times