The issue is mainly that it's adding a very weird member function that only exists because we don't have a proper bit iterator/range/view for std::bitset yet. The moment something better gets added, this function would be obsolete.
The other options are more justifiable because counting zeros, possibly at a start index, is a general purpose operation. Once you bunch an increment and extra checks into it, the design is no longer easy to justify.