Move to cairo_region_union_rectangle
Use cairo_region_intersect
Move to cairo_region_subtract