Isso não obtém datas com zeros, para isso você precisará de uma tabela de datas ou de um procedimento armazenado para percorrer as datas. Uma maneira de fazer isso é uma subseleção de uma consulta de união (não testada):
SELECT commission_date, SUM(click_commission), SUM(lead_commission), SUM(total_commission)
FROM (SELECT DATE(click.time) AS commission_date, click.commission AS click_commission,
0 AS lead_commission, click.commission AS total_commission
FROM click
UNION ALL
SELECT DATE(lead.time) AS commission_date, 0 AS click_commission,
lead.commission AS lead_commission, lead.commission AS total_commission
FROM lead) AS foo
GROUP BY commission_date
ORDER BY commission_date