Rather than mess (and create a maintenance nightmare) with a standard Timestamp field, create a custom column of the Timestamp type. It won't get overwritten if someone uses a standard Calibre feature
USE the CLI (as hinted by Kovid) and a custom script to populate your Library

(A blank, means the entry was not processed using your
special rules)
I see all kinds of issues. The TZ settings. or any other Timestamp affecting setting