WebMapServer.createGetFeatureInfoRequest() creates a GetFeatureInfoRequest based on a supplied GetMapRequest. According to the WMS spec:
"Because the WMS protocol is stateless, the GetFeatureInfo request indicates to the WMS what map the user is viewing by including most of the original GetMap request parameters (all but VERSION and REQUEST)."
Using WebMapServer.createGetFeatureInfoRequest() and comparing the output to the original GetMapRequest I find that the original layer and styles information is not carried over. Sending the GetFeatureInfoRequest to a MapServer WMS instance caused a servvice exception to be thrown as the Layer is not specified in the GetFeatureInfo query received by the server.