Why source-NAT evaluation occur after route look-up ???
Just to save CPU cycles, as it makes no sense to do a source NAT when the destination is not reachable or the security policy is not permitting the traffic.
To anticipate your next question: destination NAT has to be done before, otherwise you cannot do a lookup of the destination