It has to do with the handling of the codes. If you added "Keys.S", which is given a value of 83 to "ControlKey", which has a value of 17. You would end up with 100, which corresponds to "4" on the Number Pad. If you hit "4" on the numpad, your second form will open.
To keep this from happening, try this instead. By checking the boolean values, you make sure that the keycode is what you meant it to be.
Private Sub frmMain_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
If e.KeyCode = Keys.S And e.Control = True Then
frmSearch.Show()
End If
End Sub