This is a classic example of FileMaker's failure to support a 'left join'. Such a listing can now be produced with ExecuteSQL, but only if you have FileMaker 12 and only if you can work with the results being contained in a single text field. (You might actually have to use export field contents to export the data to a text file and then import the data back into a table from which to print a properly formatted report if you have a lot of customers in your database or need formatting not possible from within a single field.)
Note that your screen shot shows an arrangment that appears needlessly complex for the current form of your report. A single occurrence of your invoices table is all you need for a summary report to produce what you have now--a report listing all customers that had at least one invoice in a given month.
The work around needed to get what you want without using ExecuteSQL is pretty cumbersome. You can use a script to create "dummy" zero value invoices for each customer for each month (either all customers or just those for months where they have no sales). You might want to do this by importing the invoice data into a separate table and then add the dummy records there to keep them out of your invoices table.
Actually, I've been thinking about creating dummy invoices but it seemed like a lot of "useless" records, so I was hoping in something more light and dynamic using relationships.
Thank you so much for your hint about the needless TO in my screenshot. I've just fixed it and it's perfect.
As you suggest, I will try to make a "Dummy invoice" table where it will contain the data from Invoices and will auto create the Dummies.