### 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
BiFunction<Integer, Point, String> pointEncoder,
        Function<String, List<Point>> toPoints,
        Function<String, Rectangle> toBoundingBox,
        Function<String, GeoGridAggregationBuilder> aggBuilder,
        BiFunction<String, String, QueryBuilder> queryBuilder,
        Supplier<Geometry> randomGeometriesSupplier
    ) throws IOException {
        XContentBuilder xcb = XContentFactory.jsonBuilder()
            .startObject()
            .startObject("properties")
            .startObject("geometry")
            .field("type", fieldType)
            .endObject()
            .endObject()
            .endObject();
        client().admin().indices().prepareCreate("test").setMapping(xcb).get();
        Point queryPoint = GeometryTestUtils.randomPoint();
        String[] tiles = new String[maxPrecision + 1];
        for (int zoom = minPrecision; zoom < tiles.length; zoom++) {
            tiles[zoom] = pointEncoder.apply(zoom, queryPoint);
        }
        BulkRequestBuilder builder = client().prepareBulk();
        for (int zoom = minPrecision; zoom < tiles.length; zoom++) {
            List<Point> edgePoints = toPoints.apply(tiles[zoom]);
            String[] multiPoint = new String[edgePoints.size()];
            for (int i = 0; i < edgePoints.size(); i++) {
                String wkt = WellKnownText.toWKT(edgePoints.get(i));
                String doc = "{\"geometry\" : \"" + wkt + "\"}";
                builder.add(new IndexRequest("test").source(doc, XContentType.JSON));
                multiPoint[i] = "\"" + wkt + "\"";