Why do DFT frequency buckets need to be divided by sample period?
I don't know why you got downvoted.  This is actually a very pertinent question having to do with normalization conventions.

The most conventional DFT formula is this:

$$ X[k] = \sum_{n=0}^{N-1} x[n] e^{-i \frac{2\pi}{N} n k } $$

The $1/N$ normalized form is

$$ X[k] = \frac{1}{N}\sum_{n=0}^{N-1} x[n] e^{-i \frac{2\pi}{N} n k } $$

And the $1/\sqrt{N}$ normalized form is

$$ X[k] = \frac{1}{\sqrt{N}}\sum_{n=0}^{N-1} x[n] e^{-i \frac{2\pi}{N} n k } $$

My very strong preference is to use the $1/N$ normalized version.  This makes the bin values work as you expected them to.  It also makes the expected bin values at whole integer frequencies bin count invariant, and leakage values comparable.

If you do not apply a $1/N$ in the forward DFT, you will need it on the inverse to get your original signal back.  If you put $1/N$ on the DFT, then the inverse needs no rescaling (and the bin values serve as coefficients for continuous Fourier series).

The $1/\sqrt{N}$ is the "proper mathematical" one as it makes the forward and inverse DFT unitary matrix multiplications.  Yeah, nobody does that.

Bottom line, I think the $1/N$ normalization should be the standard convention and I write all my blog articles using that definition.

BTW, you will get a magnitude of $1/2$ for pure whole integer tones on $1/N$ normalized DFTs.  The other half is on the other side of the circle.