文字列でやるって考えは人間的だけど、
プログラム的にはコストの高い処理だし誰もそんなことをしない。
誰もそんなことをしないというのは強力な理由です。

(e.Modifiers & Keys.Shift) == Keys.Shift

これはビットがたってるか見るという非常に効率のいい確認処理だし
みんなこうする。みんなこうするというのは強力な理由です。

CtrlとShift両方押してるか調べたければ

(e.Modifiers & ( Keys.Shift | Keys.Control ) ) == ( Keys.Shift | Keys.Control )

とするのが当たり前で

e.KeyData.ToString().Contains( "Shift" ) || e.KeyData.ToString().Contains( "Control" )

なんてのは誰もやらない。
誰もやらない(略