In the documentation of xgboost I read:
base_score [default=0.5] : the initial prediction score of all instances, global bias
I think your understanding is correct, in your example the base score could be set to 0.3, or you can simply leave it to be the default 0.5. For highly imbalanced data you can initialize it to a more meaningful base score for an improved learning process. Theoretically, as long as you choose the right learning rate and give it enough steps to train, the starting base score shouldn't affect the result. Look at the author's answer in this issue.
Reference: https://github.com/dmlc/xgboost/issues/799