diff --git a/widgets/misc/e-canvas-background.c b/widgets/misc/e-canvas-background.c
index 80b3bf0..cc43b5a 100644
--- a/widgets/misc/e-canvas-background.c
+++ b/widgets/misc/e-canvas-background.c
@@ -188,23 +188,20 @@ ecb_init (ECanvasBackground *ecb)
 
 static void
 ecb_draw (GnomeCanvasItem *item,
-          GdkDrawable *drawable,
+          cairo_t *cr,
           gint x,
           gint y,
           gint width,
           gint height)
 {
 	ECanvasBackground *ecb = E_CANVAS_BACKGROUND (item);
-        cairo_t *cr;
 
-        cr = gdk_cairo_create (drawable);
         cairo_set_source_rgba (cr,
                                ((ecb->priv->rgba >> 24) & 0xff) / 255.0,
                                ((ecb->priv->rgba >> 16) & 0xff) / 255.0,
                                ((ecb->priv->rgba >>  8) & 0xff) / 255.0,
                                ( ecb->priv->rgba        & 0xff) / 255.0);
         cairo_paint (cr);
-        cairo_destroy (cr);
 }
 
 static GnomeCanvasItem *
diff --git a/widgets/table/e-table-header-utils.c b/widgets/table/e-table-header-utils.c
index f7c12bc..7ca76f0 100644
--- a/widgets/table/e-table-header-utils.c
+++ b/widgets/table/e-table-header-utils.c
@@ -412,6 +412,4 @@ e_table_header_draw_button (cairo_t *cr, ETableCol *ecol,
 	}
 
 	g_object_unref (layout);
-
-        cairo_destroy (cr);
 }
