The best way to calibrate is a two way timed run over a fixed period. I found two fixed lights here about 1nk apart and timed a two way run.
I have the ST40. I am not sure how you are doing it but I put it in
cal mode, click the button passing the mark and click the button passing the second mark. The
cal procedure is set up to stay in cal mode for a two way run.
The speed log is notorious for fouling on my
boat. I need to clean it weekly.
(edit - sorry - just read the manual for your unit and it does not have the timed run option - weird)
Just to check - when displaying SOG - it is not internally generated. It is receiving that from seatalk/gps input. When in Speed mode it is reading from the log and applying cal factor.
Cal factor simply appears to be a known speed adjusted up or down - hence the requirement to measure SOG from an external source with zero
current. There could be a non-linearity error in the
electronics or due to speed log installation/fouling.
When fouled my speed log error gets bigger especially at lower speeds.