foreign: cairo.Surface