Add a widget derived from GtkDrawingArea that handles the drawing. It automaticaly requests rerendering of the page if necessary (i.e on a scroll and rotate). This should solve all the rendering issues.