GeometricScene often generates points and scalar parameters, which (along with the points and scalars provided by the user in the first argument) must be given values before the scene will format as a graphical image. Hence if you aren't getting a graphical formatting, you should wrap the GeometricScene with RandomInstance (even if the scene is fully determined) to fill in the missing values.
Curious, Disk returns an image too:
Disk
GeometricScene[{{o -> {0, 0}}, {r -> 1}}, {Disk[o, r]}]