I've been looking into this a little bit as part of addressing some other issues and I think we have a conceptual conflict going on somewhere... basically we're setting a "initial_plugins" default, which is merged with the database loaded version and replaces any missing values (since it's not possible to tombstone or anything).
Interestingly, if there is a host specific config.ini present the ini loaded version of "initial_plugins" is unset, which explains why we're seeing this on hosted and some self hosted services, but I'm not seeing it on my own site (which uses host specific configs).
I think the least worst option would be to unset the ini loaded version of "initial_plugins" if a database defined version is present. This will allow plugins to be toggled and a site created with an initial list of activated plugins... however it will prevent us from using initial_plugins to activate new plugins on old sites by modifying the config file.
Given that initial_plugins is unset before loading host specific ini files, I'm guessing this was the intent...