ditto command with & not working in AppleScript "do shell script..."

I’m trying to write this AppleScript to do some backup routines but it’s not working. I tested the ditto command with the trailing ampersand in Terminal and it worked, but it’s not working in the script. I have checked all the data leading up to the ‘do shell script’ command and it looks exactly like my tests in the Terminal, except that I’m not using the quoted form in the Terminal and I am in this script. But this shouldn’t make any difference, right?

Sorry that the script is so dense. You’ll have to trust me that all the handlers return what I expect, correct POSIX paths to the items. The mass of handlers would make the post overflow, so I’m leaving them out. To make things worse, I’ve loaded it with comments. Hope someone can help. Thanks in advance.


property backupTargets : {"~/Resources"}
property backupDestination : "~/Backup"
property backupIndex : 0

set dittoCore to "ditto -rsrc "
tell application "Finder"
	repeat with thisTarget in backupTargets
		set backupPath to my verifyFolderMakeIfNil(my coercePath(backupDestination, "AS") & my pathToName(thisTarget, true) & ":", true) as text -- WORKING
		-- the above line will verify that there is a folder in the backupDestination folder with the name of thisTarget, which in this example is "Resources". It will create the folder if it doesn't exist (and the 'true' parameter causes the handler to create every folder in the path recursively if needed). The handler returns an alias ref to the folder, which I then convert to text. 

		tell application "Finder" to set backupItems to (every item of folder (my coercePath(contents of thisTarget, "AS")) whose label index is backupIndex) -- WORKING

		set backupItems to my coercePathList(backupItems, "POSIX") -- WORKING
		-- the above line changes the Finder refs to POSIX paths, I don't think I need this, but I haven't been able to get it to work without it, so I have to reexamine the handlers in the following repeat block. 

		repeat with thisItem in backupItems
			set targetFolder to my coercePath(my verifyFolderMakeIfNil(backupPath & my pathToName(thisItem, true) & ":", false), "POSIX") -- WORKING
			set dittoCommand to dittoCore & quoted form of contents of thisItem & " " & quoted form of targetFolder & " &" -- LOOKS CORRECT
			-- Will this bog down my computer when it spawns 8-10 concurrent dittos copying a few GBs total? or will they share nicely? 
			do shell script dittoCommand -- NOT WORKING
			-- basically the ditto command is something like this:
			-- ditto -rsrc '~/Resources/AppleScripts' '~/Backup/Resources/AppleScripts' &
		end repeat

	end repeat
end tell

Please, nevermind. Right after I posted, I found what I did wrong.

Please tell us what you did wrong… so we can all have access to the correct version of the script online.

Thank You!!!