Pero.... ese dato de fecha .. como lo estás guardando en tu tabla de tu BD?
Es un "string" (un VARCHAR o algo de texto? .. )
Te lo comento por qué si es así .. es "normal" que te suceda eso. Usa campos tipo DATE y formatea su salida con DATE_FORMAT() (de Msyql) ..
No todo es "PHP" y ... más si se trabaja con Base de datos es IMPRESCINDIBLE conocer SQL .. El lenguaje de consultas que use. Cuanto más sepas .. verás que más fácil haces ciertas cosas y sobretodo más optimizadas y con ménos código PHP por médio cuando puede hacerlo perfectamente tu BD ..vía SQL.
www.mysql.com
Un saludo,