Yes, you need the diode. When you stop the current flow in the delay coil, the physics of the coil will try to keep the current flowing, creating a nasty spike of voltage. The diode dissipates that spike within the coil.The TIP120 will work to drive the relay. Use a resistor of around 470 ohm to1K between the arduino pin and the base pin of the transistor.
The relay needs current flow to turn on. With 3V you won't get that current flow, so its not likely to work.The resistor between arduino & base limits the current flow out of the arduino - try a lower value."I can if test it with a 5v source to the transistor and that works, but not from the 5v on the Arduino pin...."What does this mean?