The Discrete Fourier transform doesn't actually decompose a signal into a sum of sinusoids it was composed from. The DFT projects the signal onto a specific set of discrete sinusoids known as Fourier basis. Sinusoids used to compose the signal may or may not coincide with the DFT basis.
Here's another way of looking at it. The DFT deals with periodic functions. If you plot 3-4 periods of your signal interval, you'll see it doesn't look like a sum of pure sinusoids, and has discontinuities - if sinusoids it was composed from don't coincide with a Fourier basis.