@Independent-X what is your locale, and what does the `encoding:` in the status bar show?
To be clear, files are saved with the encoding set in the save dialog (which defaults to what is in the status bar). Users can set what encoding they want a file saved in, and Geany does what it is told, so it will never read the contents of the file to decide an encoding to save a file.
The contents are considered when loading (unless the user explicitly specifies an encoding) because there is no setting available then. That is the only time the `-*- coding:` line is considered.