Desconociendo completamente tu funcion display_button() te puedo decir que el hecho de que una imagen se comporte como enlace, boton o lo que sea, no depende de PHP, sino de HTML y, primero seria necesario ver si tu HTML se esta generando correctamente o no... supongo que no, porque no te funciona.
Entonces, abre el codigo fuente generado en el navegador y revisa si las etiquetas para esas imagenes se estan creando correctamente o no.