Il codice non è chiarissimo: chiedi se vuoi eliminare una immagine e poi cancelli una intera cartella?

Comunque, se ben ho capito, l' immagine del cane è effettivamente quella selezionata nella PictureBox... confermi?

Fai una prova: inserisci una immagine qualsiasi nelle Risorse del programma ed invece di scrivere:

PictureBox1.Image.Dispose()

scrivi:

PictureBox1.Image = My.Resources.image1

Così dovresti "scollegare" completamente la PictureBox da eventuali immagini su file nell' HD..