Aaaahhhh. I'm going nuts here. I posted the following error, then it appeared to change back to doing right, so I deleted it, but it turns out that it still isn't doing right, so here it is again:
I can't reproduce this on an 800x480x240 emulator nor on an actual 800x480x240 device. Have you tried logging both Density and GetDeviceLayoutValues immediately on entry to Activity_Create?
I restarted B4A while leaving the emulator open and the next time I compiled to the emulator, it read it right as 1.5, so I guess it was just a system glitch. I leave my computer running all the time and can go many days without closing B4A, which probably isn't a great idea.