It is a Jooma! issue.
try theses :
echo(JHTML::_('calendar','2012-02-23','date','date','%Y-%m-%d')); //OK
echo(JHTML::_('calendar','23-02-2012','date','date','%d-%m-%Y')); //OK
echo(JHTML::_('calendar','23-02-12','date','date','%d-%m-%y')); //OK
echo(JHTML::_('calendar','23/02/2012','date','date','%d/%m/%Y')); //FAILS
echo(JHTML::_('calendar','02-23-2012','date','date','%m-%d-%Y')); //FAILS
I looked in Joomla and I cannot propose you a fix now.
The idea could be a JS script to corrupt the calendar, but the best is that issue should be solved in next releases of Joomla.
EDIT : In Joomla 1.5, it is working nice.
(Try to do the same above tests on Joomla 1.5)