The issue is actually right here
What is parsed here is the final coordinates (lat,lon) but we instantiate an object with only the degrees (which is wrong).

To fix this I had to refactor a bit the GeoCoordinate constructors and change some code in other places but this is the core of the problem