Hi there, Thanks for the report! I appreciate the screenshots too.
I'm currently not looking for bug reports about behaviour as it's basically a rabbit hole and there are multiple known issues without easy solutions, but improving it is in progress. I haven't discussed it in detail before though, so this is probably a good point to go into it a bit to give context!
The data comes from EDSM but is also doing best effort with the data that is available, and unfortunately often that is quite limited.
The map is currently rendering locations based on each bodies distance to arrival stored in EDSM.
Obviously orbits keep going in real time, so this is not always going to to be up to date. This may change to be augmented with local data and/or to to sort by name but that will need routines for exception handling (Diso 3 aka Birmingham is a good example of an edgecase where you would want to persist the ordinal location of a body). Body ID might also be a viable option for sorting, but I am not sure if there are edge cases where that might not work (e.g. Sol) and would also need an exception.
Allowing for a few edge cases scenarios, current behaviour can be improved and is very much the plan - to have the UI will indicate if the data is stale (and display the age of the data - e.g. 'last survey 10 days ago') or if you are in the same system, prompt you to do a scan yourself.
The challenge around objects like stations is that data quality that goes into EDSM is limited in accuracy, in part because the underlying game data it gets is also limited. If you look at Diso right now, then Shifnalport is shown orbiting Birmingham, but it will probably change again when new player game data is submitted to EDSM. Mars High in Sol is another system that goes walkabout for some reason.
View attachment 283370
In the longer term, having ICARUS Terminal augment the EDSM data with player data should help mitigate issues like this, but without changes to the game API it can probably be never be fully resolved. It is particularly challenging problem for planetary outposts and for knowing what services are available, as this changes over time too.
Of course, in Horizons and Odyssey there are different settlements / outposts on a given planet. Currently the game displays everything it knows about, but to properly support Horizons players it would need to filter out the Odyssey only Settlements (and something I might do in the longer term).
My working assumption, based on timestamps of data and the sorts of things I've seen, is that there may be some clients out there which are submitting incorrect or misleading data to EDSM, which I assume is a bug but it's possible that is by design (e.g. they are posting incomplete survey data, which is being incorrectly extrapolated) and that just has unfortunate consequences.
Most vexingly, there are reports of settlements being on the wrong planet in a system; having looked at the game data that just should never be the case, which makes me think some clients are flat out reporting information incorrectly or there is an error on the processing side.