I resolved this on my own -- here's what I did
(as an introvert, I'm perfectly fine talking with myself

)
The import of the library from iTunes does seem to indeed store it in the database cache of the library. *IF* I did a rescan of my library after import, it would have indeed wiped out my ratings (since it would have gone back to files and rescanned, where it didn't exist). I did confirm this by rescanning a select few music files, and their ratings did indeed wipe out. So naturally I stayed away from rescanning for now.
I *think* a resynchronization of tags *could* have pushed some of the ratings back to the file (spotting differences between cached library entries and file tags, and pushing back to file) -- however it seemed in my testing that it was not consistent enough in spotting differences and thus not writing back to files.
So I created an auto-playlist that identified each rating (I used whole stars), and then put results into a static playlist (auto-playlist looking for rating of 1 star would then copy into a static playlist named '1 star'). So now I had ALL my songs represented in one of 5 playlists. I confirmed all songs were represented in these playlists.
I also made sure to (temporarily) make it so changing tags didn't update modified date of file
Then in each playlist, I did a rescan (right click -> send to -> rescan) which "correctly" removed all ratings when rereading the tags, and then I simply rated all songs in the playlist with the appropriate rating.
As an added bonus, since never stored in the tag, this rescan also wiped out the itunes-guessed album rating as well (which I didn't want!). I guess I could have followed the same approach as ratings had I really wanted to retain those album ratings as well.
What this exercise REALLY did was highlight how incredibly powerful and awesome MusicBee is. I'm REALLY liking my choice to ditch iTunes.