Sorry about the delay, I've been sick.
My Toshiba runs WM2003SE.
I haven't altered the message loop and I don't handle WM_ events myself. I just use the overloaded StylusDown/Up functions of CGapiApplication, which behaves as I described. The coordinate in the POINT structure passed to those functions contains a location I may never have clicked, which is extra strange.
I'll put together a test app using one of the SDK samples. Hopefully the problem is reproducable hehehe... Otherwise, it must be something I did... but considering what I've done, it doesn't seem likely.
As for UI element states, Down events mark an element as down, and an Up event clears the down state of all elements. That's why this extra Down event is making my buttons stick.
Anyway, I'll get back with you guys when I have the sample app to post.