Update entry Enabled value based on field value when saving
Looking into this more and understanding how Craft works, a post date needed to be set, it will not do this automatically for you.

On saving the entry, it will check to see if the entry is enabled and has a post date - https://github.com/craftcms/cms/blob/d72c2b0bbddfeced0920f11bfaf4d9891fe62a5a/src/elements/Entry.php#L936

To achieve this I copied how Craft manages the date in the beforeSave function https://github.com/craftcms/cms/blob/develop/src/elements/Entry.php#L1234-L1236

On testing this allowed the entry to be viewed in the frontend and allowed other plugins and modules to do what they needed to with the entry.