Why are my modifications to the configs always overwritten?

ispCP works with so called working copies. After you set something in ispCP the changes are at first written to the working copy and this one is copied to the final destination.

So if you want a modification to persist, you have to make it also to the working copy. You will find them in /etc/ispcp/name-of-service/working/.

Please note: modifications to specific apache virtual hosts are also possible in the configs which are in /etc/apache/ispcp/domain.tld - these are persistent.