This won't exactly help you, other than giving you some encouragement (maybe) that you are getting close.
From work done a long time ago with the PI-API, it appeared that Digital state values in PI are stored as negative numbers - so maybe there is something in the PI OLEDB object model that would allow you to specify that PI does a conversion from the negative integer to the text strings defined as the Digital State set.
Hopefully, someone who has used PI OLEDB can give you the answer - but it appears that you're on the right track.
jhcoxx