Have them stop deleting data one row at a time!!! Using a cursor for this is ridiculous! This should be done in batches of X records at a time using an index seek to get to the proper ranges of batches to delete. I have done this type of stuff at many clients over the years and it is both incredibly efficient AND avoids locking large ranges of data.
Oh, and there isn't a hint of error handling in that code!
Best,
Kevin G. Boles
SQL Server Consultant
SQL MVP 2007-2012
TheSQLGuru on googles mail service