Cita: el ON substituye al WHERE
No exactamente.
El ON reemplaza al WHERE en los casos donde se indica los campos que relacionan las tablas. Pero si lo usas para buscar otros valores puedes afectar la performance, ya que es posible que el parser desactive el uso de los índices, si no está correctamente escrito, o no está indexado.
Esto sería lo más adecuado: