correctly call cairo_destroy

fix memory leak with gtk2 runtime
cairo assertion with gtk3