Se supone que no debe funcionar, en los comentarios dicen que el echo de que puedas ver las propiedades con var_dump, es un efecto secundario de var_dump(seguramente tenga que ver con el casting a array).
Como te comente antes, debes utilizar DateTime::format, algo así:
Código PHP:
Ver original$date = new DateTime('2012-12-21');
echo $date->format('Y-m-d') . PHP_EOL;
y te dejo una curiosidad(seguramente por esto se ven las propiedades en con print_r)
Código PHP:
Ver original$date = (array)new DateTime
('2012-12-21'); echo $date['date'] . PHP_EOL;
y me corrijo lo han marcado como request.