Just an update. NL2.9.15 now supports a separate Country column, and the server now supports both the DXCC and Country columns being set by the Logger, i.e. the DXCC data has gone from a local only column to a network column. Both of these columns are now transferred to the contacts table when you log a contact.
Also, NL2.9.15 supports adding the extra fields at the end of each line in the PRF (without changing the version number). It turns out that this is compatible since NL2.4 and NL2.9.x pre 2.9.15 ignore those extra fields.
However, there is no current support for correlating the DXCC column with the Country column. One problem is that they are not in a 1:1 correspondence. In some cases 1 DXCC number covers multiple countries, and in other cases 1 Country contains multiple DXCC numbers (like the US!).
I don't think I'll implement anything for the Check-ins table. I eventually plan to add a "mess with your contacts table on a large scale"
feature, that will have various operations for making significant changes to your contacts. Basically, you would be able to use the custom filter to select a number (potentially a large number) of contacts, and then do an operation to them, e.g. set all of the operator fields to a certain value, or heuristically map the DXCC column from the Country column, or heuristically fill in the DXCC and Country columns from the callsign, or do QRZ lookups to fill in the fields (which could be dangerous since the current QRZ data may not match the actual data at the time of the call) etc. Once I implement the basic operation support I'll be looking for suggestions on the various modification operations people would like to see.