In your code here
VBProj2.iquantity(intX) = txtQuantityNew.Text - VBProj2.iquantity(intX)
Your actually subtracting the initial quantity from the new quantity, the opposite of how you said you wanted to do it, which would be
VBProj2.iquantity(intX) = VBProj2.iquantity(intX) - val(txtQuantityNew.Text)