Hola,
Puedes usar la propiedad "Filter" (quizá "Filters") del componente "TSaveDialog" para especificar las extensiones que se mostrarán disponibles en el diálogo. La propiedad "DefaultExt", si no me equivoco, admite una extensión, sin punto inicial siquiera, algo como "bmp", de modo que, si no se asigna ninguna extensión al nombre del archivo, será esa la que se le ponga. De todas formas es raro que el archivo se guarde "mal" si no tiene la extensión adecuada. Otra cosa es que dicha extensión sea necesaria para que pueda reconocerse el archivo en un determinado programa, pero, la extensión no debería, creo yo, afectar al contenido del archivo. En fin, a ver si te he ayudado en algo.
