I think I have found the issue(s). Magic words work the same on templates as on regular pages. However, keep in mind that they are subject to page caching. As such, they won't change the very second (or even the same hour) that it becomes the next day. The issue appears to be with your use of parser functions. Here is the relevant part of the template.
{{#switch:{{lc:{{{coloring_method|}}}}}
|single = {{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|0|[[File:Paint Job Single Sunday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|1|[[File:Paint Job Single Monday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|2|[[File:Paint Job Single Tuesday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|3|[[File:Paint Job Single Wednesday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|4|[[File:Paint Job Single Thursday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|5|[[File:Paint Job Single Friday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|6|[[File:Paint Job Single Saturday.png|x35px|right|link=Paint Job]]|}}
|dual = {{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|0|[[File:Paint Job Dual Sunday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|1|[[File:Paint Job Dual Monday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|2|[[File:Paint Job Dual Tuesday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|3|[[File:Paint Job Dual Wednesday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|4|[[File:Paint Job Dual Thursday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|5|[[File:Paint Job Dual Friday.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:{{#expr: ({{CURRENTDOW}}) mod (7)}}|6|[[File:Paint Job Dual Saturday.png|x35px|right|link=Paint Job]]|}}
|plating = {{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|0|[[File:Paint Job Plating Gold.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|1|[[File:Paint Job Plating Pink Anode.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|2|[[File:Paint Job Plating Tungsten.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|3|[[File:Paint Job Plating Platinum.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|4|[[File:Paint Job Plating Brass.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|5|[[File:Paint Job Plating Steel.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|6|[[File:Paint Job Plating Tin.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|7|[[File:Paint Job Plating Iron.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|8|[[File:Paint Job Plating Copper.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|9|[[File:Paint Job Plating Nickel.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|10|[[File:Paint Job Plating Silver.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|11|[[File:Paint Job Plating Lead.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|12|[[File:Paint Job Plating Bronze.png|x35px|right|link=Paint Job]]|}}
|{{#ifeq:|{{#expr: ({{CURRENTDAY}}) mod (14)}}|13|[[File:Paint Job Plating Titanium.png|x35px|right|link=Paint Job]]|}}
|default = [[File:Paint Job Plating Default.png|x35px|right|link=Paint Job]]|}}
I am not sure why but you (or whomever wrote this part) are being over zealous with your |}} and that is one of the main issues. The other is that the #switch is not being used properly. #switch is supposed to be used like this.
{{#switch: string-to-check
| string1 = output for string 1
| string2 = output for string 2
| string3
| string4 =output for strings 3 and 4
| #default = output for all other cases
}}
Or like this.
{{#switch: string-to-check
| string1 = output for string 1
| string2 = output for string 2
| string3
| string4 = output for strings 3 and 4
| output for all other cases
}}
What you currently have is something like this.
{{#switch: string-to-check
| string1 = output for string 1
| more output for string 1
| more output for string 1
| more output for string 1
| string2 = output for string 2
| more output for string 2
| more output for string 2
| more output for string 2
| string3 = output for string 3
| more output for string 3
| more output for string 3
| more output for string 3
| #default = output for all other cases
| more output for all other cases
}}
As such, the #ifeq you intended to use for changing the output image are instead used as alternative values against which the input string is compared. The reason for this is that you are chaining your #ifeq together like this.
{{#ifeq: string-to-check
| 0
| output for Sunday
| output for not Sunday
}}
|{{#ifeq: string-to-check
| 1
| output for Monday
| output for not Monday
}}
If you want to continue to use #ifeq, you need to remove the | in front of the subsequent #ifeq so that they are all part of the same option in the #switch. Alternatively, nest them so that, if it isn't Sunday, it checks if it is Monday. If it isn't Monday, it checks if it is Tuesday. And so on and so forth. This would look something like this instead.
{{#ifeq: string-to-check
| 0
| output for Sunday
| {{#ifeq: string-to-check
| 1
| output for Monday
| output for not Monday
}}
}}
However, this would be a lot of nesting. And don't forget that each #ifeq also has to use #expr which, in turn, has to use the magic word.
Instead, I would suggest using #switch. Given the current state, I believe the following will produce exactly what you are looking for. In this example solution, I have also reworked the parser functions to include only what is different between the cases. This minimizes the redundant text such as the x35px you had to write 29 times in the current version. I have also switched to using CURRENTDAYNAME for the single and double coloring methods since that is what is used in the image names anyways. Lastly, I just wanted to double check on the order for the plating coloring method. CURRENTDAY is 1-indexed instead of 0-indexed. This means the first day of the month is considered day 1; not day 0. Did you intend to Gold to be the 1st day or the 14th day? For now, I have assumed it is meant to be the 14th day since that is what the current version does.
[[File:Paint Job {{#switch: {{lc: {{{coloring_method|}}} }}
| single = Single {{CURRENTDAYNAME}}
| dual = Dual {{CURRENTDAYNAME}}
| plating = Plating {{#switch: {{#expr: {{CURRENTDAY}} mod 14}}
| 0 = Gold
| 1 = Pink Anode
| 2 = Tungsten
| 3 = Platinum
| 4 = Brass
| 5 = Steel
| 6 = Tin
| 7 = Iron
| 8 = Copper
| 9 = Nickel
| 10 = Silver
| 11 = Lead
| 12 = Bronze
| 13 = Titanium
}}
| #default = Plating Default
}}.png|x35px|right|link=Paint Job]]