Isn't there a much easier way, now that I think about it? How about a LUT that has that ramp, and I just sample the ramp based on temperature?
The issue is what function would I use in order to sample the color based on the temperture chosen?
In short, Planck's law describes how much energy per wavelength in the visible spectrum (or outside it for that matter) is emitted by a black body (a nonreflective body in thermodynamic equilibrium with its surroundings, don't fret too much about that, it's a sufficient approximation of reality for computer graphics purposes) at a given temperature, you integrate that power spectrum via a wavelength to RGB (or XYZ) reference table to obtain the corresponding RGB (or XYZ) color, and the color can perhaps be precomputed for each temperature of interest. That spectral conversion part is what the article Spiro linked discusses, so I think the physical basis for the temperature curve was what you were missing.