### CI Link

https://gradle-enterprise.elastic.co/s/752jgoui6up4c/tests/:x-pack:plugin:spatial:test/org.elasticsearch.xpack.spatial.index.query.H3LatLonGeometryTests/testIndexPoints?top-execution=1

### Repro line

`./gradlew ':x-pack:plugin:spatial:test' --tests "org.elasticsearch.xpack.spatial.index.query.H3LatLonGeometryTests.testIndexPoints" -Dtests.seed=DFC1C0965EFCD1EB -Dtests.locale=sr-CS -Dtests.timezone=ECT -Druntime.java=17`

Also failed with various other seeds:
* `-Dtests.seed=DFC1C0965EFCD1EB`
* `-Dtests.seed=72BEB29AA48F2C0B`
* `-Dtests.seed=CAF2A0770CD2CC7E`

### Does it reproduce?

Yes

### Applicable branches

main

### Failure history

https://gradle-enterprise.elastic.co/scans/tests?search.timeZoneId=Europe/Stockholm&tests.container=org.elasticsearch.xpack.spatial.index.query.H3LatLonGeometryTests&tests.test=testIndexPoints

### Failure excerpt

    java.lang.AssertionError: expected:<81> but was:<82>
x-pack/plugin/spatial/src/internalClusterTest/java/org/elasticsearch/xpack/spatial/search/GeoGridAggAndQueryConsistencyIT.java
0,
            maxPrecision,
            fieldType,
            (precision, point) -> GeoTileUtils.stringEncode(GeoTileUtils.longEncode(point.getLon(), point.getLat(), precision)),
            tile -> toPoints(GeoTileUtils.toBoundingBox(tile)),
            GeoTileUtils::toBoundingBox,
            GeoTileGridAggregationBuilder::new,
            (s1, s2) -> new GeoGridQueryBuilder(s1).setGridId(GeoGridQueryBuilder.Grid.GEOTILE, s2),
            randomGeometriesSupplier
        );
    }
    private void doTestGeohexGrid(String fieldType, Supplier<Geometry> randomGeometriesSupplier) throws IOException {
        doTestGrid(1, H3.MAX_H3_RES, fieldType, (precision, point) -> H3.geoToH3Address(point.getLat(), point.getLon(), precision), h3 -> {
            final CellBoundary boundary = H3.h3ToGeoBoundary(h3);
            final List<Point> points = new ArrayList<>(boundary.numPoints());
            for (int i = 0; i < boundary.numPoints(); i++) {
                points.add(new Point(boundary.getLatLon(i).getLonDeg(), boundary.getLatLon(i).getLatDeg()));
            }
            return points;
        },
            h3 -> new Rectangle(GeoUtils.MIN_LON, GeoUtils.MAX_LON, GeoUtils.MAX_LAT, GeoUtils.MAX_LAT),
            GeoHexGridAggregationBuilder::new,
            (s1, s2) -> new GeoGridQueryBuilder(s1).setGridId(GeoGridQueryBuilder.Grid.GEOHEX, s2),
            randomGeometriesSupplier
        );
    }
    private void doTestGrid(
        int minPrecision,
        int maxPrecision,
        String fieldType,