The Coding Error
The SELECT statement errs by placing the outer table in the query (customer) in the WHERE clause rather than the ON clause, resulting in the query being processed as a simple inner join rather than the intended left outer join.
You can examine this from two different perspectives, both of which explain why the expected result was not returned.