Hmm, in the double quote case it's always decimal 58 off from where it should be. Decimal 58 plus the ASCII value of double quote, is the ASCII value of backslash "\". Is it just escaping the quote? Is the answer, in that case, longer than it should be? What happens if when calculating the shift, you assume double-quote is first replaced by backslash-double-quote?

Peter