ReadFrom.NEAREST is described as the node with the 'lowest latency'. It appears this is measured via the total response time to the CLUSTER NODES command. This can be confusing if you are expecting it to be based purely on network latency, as a busy-but-near node may take longer than idle-but-far.
Please let me know if I am correct here and I'll submit some documentation updates to clarify this.