note: the solution is non-obvious, but the obvious one of applying a translational Cairo::Matrix to the gradient caused an exception to be thrown because of a non-invertible matrix.