Fourier transforms and time shift
Your math is correct, for a delay of 2 seconds, the first null in the PSD should be at 0.25 Hz.

I'm guessing the problem is in the code you use to generate the signals and/or the PSD. The sample rates seem awfully low. At a sample rate of 0.25 Hz, your 2 second delay is just half a sample, that means you would have to implement a fractional delay to generate the signal. T