ОК, во-первых, это очень просто.
date ('Y-m-d', mktime(0,0,0,MM,01,YYYY));
Последнее немного сложнее, но не намного.
date ('Y-m-d', mktime(0,0,0,MM + 1,-1,YYYY));
Если я правильно помню свои даты на PHP ...
** редактировать - Гах! Били ему около миллиона раз ...
Редактировать Пат:
Последний день должен был быть
date ('Y-m-d', mktime(0,0,0,$MM + 1,0,$YYYY)); // Day zero instead of -1