First of all, the gains are not the same.
PID Controller block has a parameter called Filter Coefficient, N. By default this parameter is set to 100. Based on your results, looks like you left this value unchanged. The transfer function of PID Controller block is:
N is the bandwidth of lowpass filter on the derivative. Pure derivative is not a good idea - it amplifies measurement noise, so a practical implementation should avoid pure derivatives and use a low pass filter, which is what PID Controller block does. If you look under the mask, that's how it does it:
The transfer function of you PID Controller you implemented with a derivative block is P+I/s+D*s.
So some difference is to be expected due to the fact that transfer functions are different. But again, the main point is not to use the pure derivative in your simulation. If you want to approach the pure derivative as high as possible, set N high, say at 1,000 or 10,000.