I'm by no means an expert at IIS, but I've configured the IIS integration a few times, mostly by trial and error before the current documentation existed. There's an amazing number of things that can go wrong with this. It's much easier to configure webserver configured into the cloud service itself.
You only need the http module or the isapi module. Both are ways that you can configure a mapping for a particular request to go to a dll.
If EA gets a 404 message from IIS, it's because a request for /sparxcloudlink.sseap returns 404. If you get this, it suggests that the handler mapping isn't correctly configured because it isn't even trying load the module. The error messages from misconfiguring the module itself should be different.
Once you've got that, you need to edit sparxcloudlink.sseap in the same directory as the module dll so that it can be read. There should be different errors returned if there are bad values in that file.