So the question is how do I write the C code to first pull out those two bytes, switch them around from LSB MSB to MSB LSB and then multiply that number by .0625?
In AVR C, an 'int' is a two-byte integer, and so you can combine the MSB and LSB of the temperature value into an 'int' value by saying
int rawtemp = (data[1] << 8) + data[0];
That's it - 'rawtemp' is now the signed temperature, multiplied by 16 (for the DS18B20). To get floating point fahrenheit and centigrade temperatures, you would say
double tempc, tempf;
tempc = (double)rawtemp / 16.0;
tempf = (tempc * 1.8) + 32.0;