frm.FlowLayoutPanel1.Controls.Add(pic)
A control can have only one parent. So moving it to the new form will remove it from FlowPanel. If you want a copy then you'll have to create a new PictureBox:
Dim pic As PictureBox = DirectCast(sender, PictureBox)
Dim newpic As PictureBox = new PictureBox()
With newpic
.Size = New System.Drawing.Size(500, 500)
.SizeMode = PictureBoxSizeMode.Zoom
.Image = pic.Image
End With
Dim frm As New Form2
frm.FlowLayoutPanel1.Controls.Add(newpic)
frm.ShowDialog()