Quick update: There is a reason that no one has done this before. AHCI is definitely not easy, at least not for what I am doing. I have found that different hardware can react differently. And there is no guide on how to do this, other than technical documentation. I have just now got something that I think is slightly stable (at least as stable as nitroglycerine).
So what is the first thing I had to try with it? I managed to run two instances at the same time reading two separate drives. And they both read at the same speed as they would by themselves (but there was no writing, only reading with data being thrown away). Not that I would ever recommend it (because it would probably be a really bad idea), but there may be the possibility to run a couple recoveries on the same computer at the same time, assuming you like to take chances.
So let’s say I can make this work and write a usable cloning utility that can perform soft resets on IDE and both soft and hard resets on AHCI, with the option to perform power cycles with an external relay. It would have a logging ability such as ddrescue (not the same but perhaps with the ability to import a ddrescue log), and also a very similar algorithm to start with. So is there a good market for this? I have every intention of making a dos style GUI for it (similar to MHDD or testdisk), but would probably make it work at the command line level first. Although I am not sure I would try to market a command line version, probably wait until the GUI version. I might make a free teaser command line version that would have about the same functionality of ddrescue when used with my passthrough patch.
I currently have a full time job, so I am doing this in my spare time. I would love to make this software and possibly my own data recovery service my full time job, but I would have to start seeing a big enough return before I could just quit my regular job. There is a BIG gap between the current software only tools (such as ddrescue) and the very expensive hardware tools. I am looking to fill that gap. So would there be a good demand for something like this? It could be a good secondary tool for the professionals to help free up the expensive hardware tool for the harder recoveries, and perhaps a starting point for those who can’t afford the big tools. Although it may spawn a new group of wannabe data recovery specialists.