Sand is fairly porous. If you dump water on sand (or at least the type of sand we have here, it's fairly coarse), it will pool for a bit, but eventually drain through. As such, I would suggest you thus approximate sand as non-interacting with water (eg a tile can have 7/7 of both water AND sand, though this may screw up murky ponds and similar. Alternatively, a simpler simulation may be just have one displace the other, as Tehran suggested in his 2nd image.
EDIT: Also if magma is involved; they should definitely displace rather than ignore each other, and if they do share a tile make 1-2/7 sand becomes a glass floor, 3-5/7 becomes a glass ramp and 6-7/7 sand is unaffected.
More interesting though is the replacement of ramps; maybe make every tile of 3, 4 or 5 act as a ramp does now; an 'empty' tile that allows passage onto tiles above or level with it. Tiles of 6 or 7 could then act as full tiles for purposes of pathing etc. Also, you'd want to make a ramp prevent sand flow (or at least limit it), or in the case above magma would slowly eat into sand, turning it into a room full of green glass ramps. Then again, that may be desired behaviour.
Finally, re: the drowning. If a dwarf is on a tile when the sand level changes by >4 in one tick, he is entrapped. If the total sand level is >4 AND he is entrapped, he starts drowning. If he is entrapped he needs to be dug out by someone else (remember, 4/7 is neck high on a dwarf; if you got buried up to your neck in sand, you'd be unable to free yourself in any short timeframe). Going by Tehran's animation, the effect of this means it's impossible to get buried in sand unless multiple z-levels are involved, but if they are, it would be quite likely.
Man, I can't wait to see creatures with the 'sand-swimming' tag :p