Help: Bitblt question

Good day.

I have 2 images (320x240) and 4 buttons on the form:

//copy left half
procedure TForm1.Button1Click(Sender: TObject);
begin
  Bitblt(image2.canvas.handle,0,0,80,120,image1.canvas.handle,0,0,SRCCOPY);
end;

//copy whole image at once
procedure TForm1.Button2Click(Sender: TObject);
begin
  Bitblt(image2.canvas.handle,0,0,160,120,image1.canvas.handle,0,0,SRCCOPY);
end;

//copy right half
procedure TForm1.Button3Click(Sender: TObject);
begin
  Bitblt(image2.canvas.handle,80,0,80,120,image1.canvas.handle,80,0,SRCCOPY);
end;

//copy whole image in 2 steps
procedure TForm1.Button4Click(Sender: TObject);
begin
  Bitblt(image2.canvas.handle,0,0,80,120,image1.canvas.handle,0,0,SRCCOPY);
  Bitblt(image2.canvas.handle,80,0,80,120,image1.canvas.handle,80,0,SRCCOPY);
end;

Clicking 1 copies half of image1 onto image2. Consecutive clicking on other
buttons apparently do nothing - until I hide the form and unhide it again,
forcing a repaint. "Update" does not work though.. What seems inconsistent
to me is that clicking on button 4 does work (in that the whole image gets
copied).

I am new to windows so I assume I must be missing something terribly obvious..
Thanks in advance for any help on this one..

PS. Using Bitblt on the canvas of the form seems to have the exact opposite
    effect: the result is immediate and repeatable but is not permanent, ie
    after the form has to be repainted the newly painted regions disappear..