What are the values for the ECT and IAT? Are they reasonable based upon local conditions at the time? An inaccurate temperature sensor can make for a difficult start.
What is the MAF flow during cranking? Does disconnecting the MAF have any effect upon the problem?
What is the fuel pressure (FRPS) as reported by the PCM before cranking?
What are the RPM's as reported by the PCM during cranking? Do they change? Does the check engine light go out during cranking?
What have you done to rule out a fuel injector problem? Consider an injector cleaning and flow test service such as injectorRX.com. Note, it's not possible to "see" a leaking fuel injector unless it's pulled out. That's why knowing to fuel pressure before cranking can help spot a leak in the fuel system.
Does the IAC valve work? Is it clean? What is the IAC duty percentage during normal idle? Does cracking the throttle slightly open during cranking help?
What is the status of the CAM sensor? Is the electrical connector in good shape? Clean with no corrosion? A missing CAM sensor signal can "cause" long crank times.
What is the status of the base motor? Compression good? Cylinder leak down? Spark plugs in good shape? No moisture in the spark plug wells? COP boot insulators in good shape?
There's some serious "parts changing" going on there. Recommend testing more. Some of the parts changed are rather expensive and could have been ruled in/out with more tests.
Do you have an ODB2 scanner? If not, here's some information on an affordable Windows based unit. This could have paid for itself with the first part changed without a "fix".
ForScan ODB2 scanner w ELM327 USB
While working on your car have you ever wanted: to find an ODB2 operational PID value (say fuel pressure or MAF)? How about graph a PID value over time? Or compare multiple PID's over time? Access a bi-directional PCM control such as test a...
www.stangnet.com
For example if it is known that the fuel system is maintaining fuel pressure between starts and the FRPS is accurate, THEN changing the FPDM, or the fuel pump itself couldn't possibly impact cranking time.