They use a GtkOverlay, so reflect that in the name.
It was returning the full natural size (same as -1) due to default value handling in the code below. Tests have been updated to match this output.
Have square images in the following sizes: * 20 * 100 * 150 * 200 * 300 and place them in a can-shrink Picture allocated at the sizes: * 200x100 * 100x200 and set align to center/center. That's 10 combinations and they should all do the right thing.