It will not let you rewrite a container in the new database over the old one. It will recognize the contention and the tablespace with be in a Must Have Containers Defined state until you successfully complete the redirect.
Here is a sample of one i did last week
db2 "restore db reportt into kratz redirect"
db2 "set tablespace containers for 0 USING (Path '/u03/SHAZAMD1/KSYSCAT/SQLT0000.0')"
db2 "set tablespace containers for 25 USING (File '/u03/SHAZAMD1/KRATZTS' 384000 )"
db2 "set tablespace containers for 1 USING (File '/u03/SHAZAMD1/acktempSpaceTs01' 512032)"
db2 "set tablespace containers for 3 USING (Path '/u03/SHAZAMD1/KUSERSPACE/QCTEMPTS')"
db2 "set tablespace containers for 6 USING (Path '/u03/SHAZAMD1/KUSERSPACE/SQLT0001.0')"
db2 "set tablespace containers for 18 USING (Path '/u03/SHAZAMD1/KUSERSPACE/temp32')"
db2 restore db reportt continue
So you do the restore redirect first. Then you set containers for the tablespaces you want to redirect, then you tell it to continue. Note on the continue, you are continuing a restore against the original db name and not the source db name.