It would be great if there were two lines of taxis. The line on the left would be for non-Sharia compliant taxis, which would take anyone anywhere, regardless of what they were carrying, wearing, or doing. The other would be for clearly marked Sharia compliant taxis, which would have a list of restrictions as long as your arm. Let the customers step up and request a taxi from one line or the other.
After watching the non-Sharia compliant cabs whiz by and take 98% of the fares for a few weeks, we would soon see a change in attitude.
Your suggestion is the simplest, most rational & ultimately most fair way to approach this, I think.