string.Format()
считает, что каждый '{' или '}' является частью заполнителя (например, '{0}', который вы уже используете). Вам нужно избежать каждого литерала, удвоив его.
Итак, в вашем случае выполните:
string tmp = @"
if (UseImageFiles) {{
...
}}";