Does createrawtransction accept scriptPubKey and redeemScript as inputs?
Yes, it accepts them (and any other parameters you care to specify in the JSON).  No, it doesn't use them---and I don't know why Gavin used them in his example.

There's a more detailed and more up-to-date example of spending a P2SH multisig output on the Bitcoin.org developer examples page.