'-----------------------
pctSource.Picture = LoadPicture(strPath + strImmagine)

Call pctThumb.PaintPicture(pctSource.Picture, 0, 0, pctThumb.ScaleWidth, pctThumb.ScaleHeight)

SavePicture pctThumb.Image, strPath + "thumb\" + strImmagine
'-----------------------

così adesso funziona
credo che il problema fosse nelle proprietà:
scalemode
1 - per la picture di origine
3 - per la picture di destinazione

autoredraw
false - per la picture di origine
true - per la picture di destinazione

credo Xchè ho scaricato un progetto che usava il metodo paintpicture, ho copiato i controlli picture e li ho inseriti nel mio prog. rinominandoli e tutto ha funzionato senza cambiare una riga