With binary conversion chances for the wrong result are smaller for the tables with 4+ columns. I was trying your method before I get proposed the other one. And actually, I was trying to calculate probability of two methods.
Yours method has more chances to give you bad result (even chances for both are very small for the tables with 4+ columns)
The more columns the cleaner the method with the binary column conversion and more chances with you method to have an error.
Yes, you have performance boost, but not as much as between solution 1-2-3 and 4. And in most cases this is not a point. When you doing such comparison the time (usually) is irrelevant