This is a known issue with libraries which assume that System.Net.WebRequest.Create(Uri) always returns an instance of System.Net.HttpWebRequest:
var request = (HttpWebRequest)WebRequest.Create(uri);
However, after registering Rebex HttpRequestCreator, WebRequest.Create returns instances of Rebex.Net.HttpRequest which inherit from System.Net.WebRequest (not from System.Net.HttpWebRequest), which means the code above would fail.
Unfortunately, there is not much we can do about this. HttpRequest does not inherit from HttpWebRequest because it did not have a suitable constructor until .NET 4.5, and even that is not intended to actually be used by third-party code and produces an error on compilation. Using the protected serialization constructor doesn't seem quite right either because it has been made obsolete in .NET 2.0 already. Additionally, even if we did manage to inherit from HttpWebRequest, the resulting class would be unlikely to work because HttpWebRequest was definitely not designed with inheritance in mind.
So the only reasonable solution at the moment is to modify third-party libraries to accept instances of System.Net.WebRequest as well (or modify them to use Rebex HttpRequest instead of .NET's HttpWebRequest). Unfortunately, in case of closed-source third-party libraries, that persuading the vendor to make the library compatible with System.Net.WebRequest might be a challenge.