I think it's that "find | xargs touch -d" that is to blame. You might want to use -print0 and xargs -0