As a point of interest, the iPhone dev team has released redsn0w v0.9b3 which handles 3.1.2. For the most part, if you are already jailbroken with blackra1n and everything is working ok, no need to use redsn0w. If you need to jailbreak and dont want to use blackra1n for some reason, you can use redsn0w as an alternative. Redsn0w also has options to change boot logos. The redsn0w page has more details as well as download links at the bottom for both MAC and Windows users.
Note: if you have a 3GS newer than week 40 of last year then you still have a tethered jailbreak. That means if you ever reboot, you have to rerun blackra1n (or redsn0w). You don’t have to restore. Try not to reboot if you have these devices.