--- cairo-bb17403622e9ea474017e0039af8ee48b2b285db/src/win32/cairo-win32-font.c.orig	2014-04-02 04:16:04.638143700 +0000
+++ cairo-bb17403622e9ea474017e0039af8ee48b2b285db/src/win32/cairo-win32-font.c	2014-04-05 20:10:47.108309200 +0000
@@ -1600,7 +1600,7 @@
     width = x2 - x1;
     height = y2 - y1;
 
-    surface = cairo_win32_surface_create_with_dib (CAIRO_FORMAT_RGB24,
+    surface = cairo_win32_surface_create_with_dib (CAIRO_FORMAT_ARGB32,
 						   width, height);
     status = _cairo_surface_paint (surface, CAIRO_OPERATOR_SOURCE,
 				   &_cairo_pattern_white.base, NULL);
--- cairo-bb17403622e9ea474017e0039af8ee48b2b285db/src/win32/cairo-win32-surface.c.orig	2014-03-21 13:10:19.000000000 +0000
+++ cairo-bb17403622e9ea474017e0039af8ee48b2b285db/src/win32/cairo-win32-surface.c	2014-04-05 20:12:14.176865500 +0000
@@ -227,7 +227,7 @@
 
     /* We can only handle opaque solid color sources and destinations */
     assert (_cairo_pattern_is_opaque_solid(source));
-    assert (dst->format == CAIRO_FORMAT_RGB24);
+    assert (dst->format == CAIRO_FORMAT_RGB24 || dst->format == CAIRO_FORMAT_ARGB32);
 
     solid_pattern = (cairo_solid_pattern_t *)source;
     color = RGB(((int)solid_pattern->color.red_short) >> 8,
