date function current month and last month the same



I have a process the uses the date function to get the last month and
the current month. Here are the functions

set x = `date -d "-1 month" +%b`
set y = `date -d "0 month" +%b`

For some reason x and y are both May. Does this have something to do
with May being 31 days? This had been working all of April and all of
May. I am using csh

Thanks for any help

.