The reason is simple. Apple is most likely coming up with 3.0.1 firmware very soon. Releasing the jailbreak would basically allow Apple to figure out what exploit the Dev Team used to jailbreak the 3GS and fix it.
Once the jailbreak is out, Apple will fix the iBoot-family bug we use to accomplish it. They will simply stop signing the old iBoots and only sign the fixed ones. If you bought your phone after Apple has done this, there’s nothing you can do…the jailbreak isn’t going to work for you.
It is possible that Apple will find the bug we use without our handing it to them on a silver platter (via a public jailbreak). In that case, we will have delayed our jailbreak for “nothing”. But we’d rather be safe than sorry!
Apple is surely coming out with a 3.0.1 firmware release shortly. They need to fix ultrasn0w. They need to fix some UI issues. 3.0 is buggy and 3.0.1 is coming. We’re going to wait and see what 3.0.1 brings before figuring out the release date for our version of the jailbreak.
Hopefully, Apple will release 3.0.1 soon and won’t find the bug used to jailbreak the iPhone 3GS. Cross your fingers!