New batch of fanfic updates appeared in my inbox so I got a chance to test this again with both downloaded and gen'd covers.
This setup seems to be working reasonably well. Removing 'old' seems to keep it from overwriting any pre-existing 'Generated' in #fanficcover. I also removed 'default' because it doesn't seem to be used unless default_cover_image is active (is this correct?).
Code:
[defaults]
custom_columns_settings:
covertype=>#fanficcover
replace_metadata:
covertype=>^(specific|first)$=>Downloaded
covertype=>^force$=>Manual
add_to_extra_valid_entries:,covertype
include_in_covertype:cover_image