This has been reported before, but it just does not seem to get addressed, even in 9.0.2.3.
If I have a date field in a grid, and I select that row and assign the value to a variable, it sets the date to the previous day. This happens if you happen to be ahead of GMT, as the date is actually returned as a UTC (?) date. If I am x hours ahead of GMT, this is interpreted as x hours before midnight, and makes it the previous day.
While this format may be useful (and may not be, depending on usage), it is utterly useless and in fact erroneous when the value is a date only (as is set in the designer). As such date only fields should not be interpreted like this.