gradient: take cairo tolerance into accont when fixing focus

Due to rounding errors, when we move the focus within the circle
we might end up slightly outside the circle and cairo will not
render the image correctly. We can get the tolerance from
the cairo context and take it into account when scaling.
A reftest that fails before this patch is included.
We also need to regenerate two of the existing reftests.

Fixes GNOME/librsvg#54
3 jobs for issue-54 in 6 minutes and 38 seconds (queued for 10 minutes and 14 seconds)
latest
Status Job ID Name Coverage
  Test
failed #102068
fedora test

00:06:38

 
  Lint
skipped #102070
allowed to fail manual
clippy
skipped #102069
rustfmt
 
Name Stage Failure
failed
fedora test Test
make[2]: *** [Makefile:1411: check] Error 2
make[1]: Leaving directory '/builds/pborelli/librsvg/_build'
make[1]: *** [Makefile:1449: check-recursive] Error 1
make: *** [Makefile:1742: check] Error 2
Uploading artifacts...
_build/tests/*.log: found 8 matching files
_build/tests/output/: found 676 matching files
Uploading artifacts to coordinator... ok id=102068 responseStatus=201 Created token=QCtWUoLa
ERROR: Job failed: exit code 1