Yo he tenido el mismo problema, lo que me ha hecho perder la confianza al cache (o no entendí la idea de su particular funcionamiento) y lo tengo por defecto deshabilitado.
Por concepto, el cache debe siempre actualizarse cuando hay cambios (lo cual no está haciendo), pero tampoco me cierra si el funcionamiento normal de Smarty (sin el cache) hace a sus vez de cache (lo que podría llegar a ser redundante).
La única forma que he encontrado de actualizarlo en su configuración estándar fue borrando el directorio de cache, pero eso no tiene sentido ni aplicación.
De todas formas, creo que no es necesario el uso del mismo, por lo que explicaba en los puntos anteriores. Puedes combinarlo, si quieres, con la sentencia
STRIP, que permite "comprimir" todo el fuente, bajando el tamaño del mismo, acelerando su "bajada". Puedes poner todo tu fuente, o solo secciones, y hay que tener en cuenta que si lo haces sobre código javascripts puede dejar de funcionar.