One option is
DiscretePlot[CDF[d, x], {x, -150, 150, 1}, Epilog -> Inset[Histogram[data, 40, Axes -> {False, True}], Center, {0.0, 1.98}, {316, 380}]] What is best is largely a matter of taste.
Addendum
In answer to a comment by the OP, the origin of a plot can be specified by the option, AxesOrigin. Applied to the code above, it gives
DiscretePlot[CDF[d, x], {x, -150, 150, 1}, AxesOrigin -> {150, 0}, Epilog -> Inset[Histogram[data, 40, Axes -> {False, True}], Center, {0.0, 1.98}, {316, 380}]] Second Addendum
Placing the curve in front of the histogram is no more difficult in principle but requires some fine tuning of the Inset size.
Histogram[data, 40, Epilog -> Inset[DiscretePlot[CDF[d, x], {x, -150, 150, 1}, Filling -> None, Axes -> {False, True}, AxesOrigin -> {150, 0}, AspectRatio -> 1/GoldenRatio - .02], Center, {0.0, .47}, {312, 312}]] 

