datetime: Keep reference to self for async calls
If the page is closed before the async call finishes, the page is unreffed and gets disposed, resulting in a crash when the finish handler is called.
To prevent this, ref self in the async call setup, and unref it again in the finish handler.
Fixes #3045 (closed)