It can be done. If you want to just swap it out you will need harness, airbox,along with injectors. Or you can use your harness and just change out a few sensors on the 06 motor to match your wiring.
Actually youll need to use the 04 cam timing forky thing--we did this--you need it. Diel can tell you exactly what I am talking about--it bolts onto the end of teh camshaft on the left side. The airbox/harness/electronics for the 04 are fine with the 06bolt the late model engine in place and use all the current electronics