<p>How is Oracle date implemented? Is it stored as milliseconds or something like that?</p>

An Oracle DATE stores the date and time to the second.  An Oracle TIMESTAMP stores the date and time to up to 9 digits of subsecond precision, depending on the available hardware.
Both are implemented by storing the various components of the date and the time in a packed binary format.  From the
Oracle Concepts Guide section on dates
Oracle uses its own internal format to
  store dates. Date data is stored in
  fixed-length fields of seven bytes
  each, corresponding to century, year,
  month, day, hour, minute, and second.
You can use the
DUMP()
function to see the internal representation of any particular date (or any other value for that matter), but that's probably more than you need (or want) to know.