diff --git a/Chart-gtk.cabal b/Chart-gtk.cabal
--- a/Chart-gtk.cabal
+++ b/Chart-gtk.cabal
@@ -1,5 +1,5 @@
 Name: Chart-gtk
-Version: 1.0
+Version: 1.1
 License: BSD3
 License-file: LICENSE
 Copyright: Tim Docker, 2006-2010
@@ -17,10 +17,11 @@
                , old-locale
                , time, mtl, array
                , cairo >= 0.9.11
+               , colour >= 2.2.1 && < 2.4
                , colour >= 2.2.1
                , gtk >= 0.9.11
-               , Chart >= 1.0
-               , Chart-cairo >= 1.0
+               , Chart >= 1.1 && < 1.2
+               , Chart-cairo >= 1.1 && < 1.2
 
   Exposed-modules:
         Graphics.Rendering.Chart.Gtk
diff --git a/Graphics/Rendering/Chart/Gtk.hs b/Graphics/Rendering/Chart/Gtk.hs
--- a/Graphics/Rendering/Chart/Gtk.hs
+++ b/Graphics/Rendering/Chart/Gtk.hs
@@ -78,6 +78,9 @@
 updateCanvas chart canvas = do
     win <- G.widgetGetDrawWindow canvas
     (width, height) <- G.widgetGetSize canvas
+    regio <- G.regionRectangle $ GE.Rectangle 0 0 width height
     let sz = (fromIntegral width,fromIntegral height)
+    G.drawWindowBeginPaintRegion win regio
     G.renderWithDrawable win $ runBackend (defaultEnv bitmapAlignmentFns) (render chart sz) 
+    G.drawWindowEndPaint win
     return True
diff --git a/Graphics/Rendering/Chart/Gtk/Simple.hs b/Graphics/Rendering/Chart/Gtk/Simple.hs
--- a/Graphics/Rendering/Chart/Gtk/Simple.hs
+++ b/Graphics/Rendering/Chart/Gtk/Simple.hs
@@ -26,7 +26,7 @@
     plw args = \ a -> plw (toUPlot a ++ args)
 instance PlotWindowType (IO a) where
     plw args = do
-        renderableToWindow (layout1DddToRenderable $ uplot (reverse args)) 640 480
+        renderableToWindow (layoutDddToRenderable $ uplot (reverse args)) 640 480
         return undefined
 
 
