WebBrowser is an ActiveX control. It negotiates with its host to deal with UI implementation details like shortcut keystrokes. It needs to tell the host about it first since the host may want to use the shortcut for its own use.
The normal host is implemented by the internal WebBrowserSite class, derived from WebBrowserSiteBase. You replaced it, now it is your job to implement that negotiation. This is done by IDocHostUIHandler::TranslateAccelerator(), simply return S_OK from your implementation of this method. Which tells the browser that it should not process the keystroke itself.