I'm trying to figure out how you got that result, and I can't find anyway to make it come up with 0Fh.

Backtracking a bit, originally you said that you were getting a reading of 74ºF.
With this formula temperature=((((temperature>>4)+50)*9)/5)-58 temperature would have to be greater that 65500 to get 74ºF.

((((65535>>4)+50)*9)/5)-58 = 7403
Then dividing by 100 before displaying on the LCD will give you 74

That's why I think you're recieving all 1's (no response) from the DS18B20.

If you removed the /100, you should get 7403 instead of 0Fh. So This is really wierd. What changes did you make?

A few things to check...
What is the actual data being received? 65535?

How many loops are executed waiting for the conversion in Wait_Temp:? My guess here is that NO loops are performed because it receives a 1, apparently indicating that the conversion is complete, even though it's not working at all.

While the program is running, ground out the data pin. Does the reading change?

The OWIN/OUT portions of the program are fine, and should work. So there's got to be something going on with the hardware.