The Rust driver currently checks the response format to the authenticate command to verify the presence of "dbname": "$external"; however, that's not present in the response from the Atlas proxy.
As a secondary issue, the x509 cert provided by Atlas includes the key in PKCS8 format; the Rust driver only looks for RSA-format keys, and provides a very unhelpful error message (unwrap failure) when none are found.