No hay mucho mas para decir que lo que dice la doc
Cita: El método __toString() permite a una clase decidir cómo comportarse cuando se le trata como un string.
No es mas que eso, cuando se intenta tratar el objeto como un string se invoca al método __toString, en el ejemplo que tu muestras el resultado es el mismo porque estas devolviendo la misma propiedad en ambos casos y en el contexto del fw se suele utilizar en los form's para generar el texto de los option's(generalmente para los one-to-many).
Saludos.