Es bastante sencillo...
En vez de alojar la imagen en el picturebox, haz lo siguiente:
coloca un control image dentro del picturebox
cambia su propiedad strecht a true
Ya está, para cambiar el tamaño de la imagen sin perder sus proporciones multiplicas el ancho y el alto del control image por el mismo factor
Sub Redimensionar(zoom as integer, destino as control)
destino.height=destino.height * zoom
destino.width=destino.width * zoom
End Sub
eventualmente, puedes querer que el picturebox tenga el mismo tamaño que la imagen entonces añades este código a la subrutina anterior
picturebox1.height=image1.height
picturebox1.width=image1.width