Looks fine actually. Just lower your Kp until you get a fairly constant desired output value.
With a too high Kp, you are using it as a bang-bang controller: when the temp is too low, turn on, when the temp is too high, turn off.
I think a Kp of 10 is more appropriate: 10% on for 1 degree too high.