GIM model doesn't use ionospheric pierce point
From what I can tell, the formulas in https://www.sgc.ethz.ch/sgc-volumes/sgk-59.pdf are used in https://gitlab.orekit.org/orekit/orekit/-/blob/0b108c1d05fb2a3be8bddb17e85e1d38d6902a5b/src/main/java/org/orekit/models/earth/ionosphere/GlobalIonosphereMapModel.java to calculate the STEC value.
However, the VTEC value that's used to calculate the STEC value is currently interpolated at the receiver/station location instead of at the ionospheric pierce point location. See Figure 3.5 in https://www.sgc.ethz.ch/sgc-volumes/sgk-59.pdf. I believe this difference may negatively affect the accuracy of the resulting path delay calculations.
Note that equation (3) in https://upcommons.upc.edu/bitstream/handle/2117/361016/remotesensing-13-00012-v2.pdf also indicates that the STEC at the receiver site (x_R) should be calculated from the VTEC at the ionospheric pierce point (x_IPP).
Note also that https://gitlab.orekit.org/orekit/orekit/-/blob/0b108c1d05fb2a3be8bddb17e85e1d38d6902a5b/src/main/java/org/orekit/models/earth/ionosphere/KlobucharIonoModel.java#L144 does use the ionospheric pierce point in its calculations.