The canvas has some room for improvement. Here are some of the possible directions in which it may be extended in the future:
The canvas could be extended to support these operations. Groups are already rendered recursively, so controlling the alpha value for a group would be a matter passing the parent's alpha value to its children The result would later be composited onto the group's parent's buffer, and so on recursively. Clipping with the result of boolean operations on other groups is more complex, but can be represented in a hierarchical fashion similar to the canvas' current organization.
The delayed update/redraw model of the GNOME canvas assumes synchronous updating and redrawing of individual canvas items, so this is not very efficient for a distributed setting where multiple components may be running on different machines or even on a single multi-processing machine. The canvas could be extended to support fully asynchronous updates and redraws, asking items to draw themselves in parallel to temporary buffers which would be composited on the fly as they arrive to the parent canvas.
This would allow components running on different processors to draw themselves in parallel and notify the toplevel canvas when they are finished; the canvas would then composite their buffers to form the final result that would be displayed on the screen.