The problem is that ‘publish_post’ happens before save_post
and ACF saves values on the latter. This means that you are attempting to get a value that ACF has not yet set.
You either need to use the acf/save_post hook with a priority > 10 or you need to look for the value in $_POST[‘acf’]
https://www.advancedcustomfields.com/resources/acf-save_post/