I have a Tcl script similar to the following:
The second synth_design run does not use the XDC. What is the cause of this problem?
This is expected behavior.
The synth_design command synthesizes the design and puts it in memory. The second synth_design command is actually synthesizing the already opened design.
If you wish to add a new source and re-synthesize the design, you will need to close the project and start over from the beginning.