sm_reloaddonators should update the local g_bIsDonator array after completion. Right now you only do this when a player connects so changes to the DB aren't reflected immediately after sm_reloaddonators is triggered.
Would be helpful to have a DonatorsReloaded forward. Plugins which use your interface right now can only rely on OnDonatorConnected. That means changes reloaded by sm_reloaddonators aren't reflected immediately too unless the plugin iterates all players each time when a donator status has to be queried.