Sets the buffer that is viewed by the canvas.
If redraw is #f, then the buffer is not immediately drawn; in this case, something must force a redraw later (e.g., a call to the on-paint method).