Instead of checking the version I would execute "chef-service-manager" and assume that we're on a good version if it executes. If it's not there exception will be thrown and we can fall back to using winsw.

If I was doing this based on version I would check the version as such:

only_if do
  ::Chef::VERSION <= "11.6."
  # More logic to make the version check.
end