Direi che nel codice che hai postato non si vede proprio il BringToFront.

Comunque ho fatto una prova, ho messo una picturebox su un form, gli ho assegnato una immagine, e poi ho copiato il tuo codice, alla fine ho aggiunto la riga
codice:
pic.BringToFront()
ed ha funzionato perfettamente.
Naturalmente ho dovuto cambiare le coordinate, per sovrapporre le due immagini, ma funziona molto bene.

Sergio