Faster:
SELECT generate_series(date_trunc('week', '2013-03-01'::date + 6)
,date_trunc('week', '2013-03-14'::date)
,'1 week')::date AS day
UNION SELECT '2013-03-01'::date
ORDER BY 1;
For a detailed explanation see related answer:
Generate series of a month by week interval in Postgresql