:copy-pixels t flickers between 2 canvases with incorrect backgrounds
When running the brownian example, the canvas was flickering wildly between 2 separate colors and the line was dotted instead of continuous. 

Editing the "background" value in the `setup` method and adding (sleep 0.5) to the end of the `defsketch` showed that one color was always black, while the other took the provided color's rgb values and turned them up to 255 (i.e. (rgb 20 0 1) would make a vivid purple background equivalent to (rgb 255 0 255)). The foreground pen was alternating between these two canvases, resulting in each one having a different set of dotted lines which together would make the _actual_ brownian path.

Incidentally, I also noticed that execution of multiple simultaneous instances seemed to be single-threaded. Even if the make-instance calls were enclosed in `bt:make-thread`, the rendering would sleep for the specified time and then choose one of them to update, rather than updating both at the specified rate independently of each other. I'm uncertain if this is a separate issue, or indicative of an erroneous setup causing the above problem.

Reproduced with MSYS, Git Bash over MINGW, and Windows Powershell on Windows. libffi-6.dll copied from a working Coq installation, SDL installed as specified in the README.

Code for the above, with colors and the `(sleep 0.5)` being the only differences from the original brownian example sketch (I ran this in the REPL, but to my knowledge it should work as a .lisp file too):
```
(in-package :sketch-examples)
(defsketch brownian
    ((title "Brownian")
     (copy-pixels t)
     (pos (cons (/ width 2) (/ height 2))) (dir '(1 . 0))
     (pen (make-pen :stroke (rgb 255 255 255) :fill (gray 0.5) :weight 1))
     (line-length 3)
     (points (make-array 256 :initial-element (cons 400 300)))
     (points-pointer 0))
  (flet ((draw (paces)
	   (dotimes (i paces)
	     (let ((new-pos (cons (+ (car pos) (car dir))
				  (+ (cdr pos) (cdr dir)))))
	       (with-pen pen
		 (line (car pos) (cdr pos) (car new-pos) (cdr new-pos)))
	       (setf pos new-pos))))
	 (rotate (a)
	   (let ((a (+ a (degrees (atan (cdr dir) (car dir))))))
	     (setf dir (cons (cos (radians a))
			     (sin (radians a)))))))
    (rotate (- (random 180) 90))
    (draw (+ (random line-length) line-length))
    (setf (car pos) (alexandria:clamp (car pos) -10 810)
	  (cdr pos) (alexandria:clamp (cdr pos) -10 610))
(sleep 0.5)))

(defmethod setup ((instance brownian) &key &allow-other-keys)
  (background (rgb 20 0 5)))

(make-instance 'brownian :width 600 :w 600)
(make-instance 'brownian :width 600 :w 600)