I think this is unnecessarily harsh. Why are you making people pay the costs for their own drug tests up front? If they are in such dire straights that they are applying for assistance, this may not be many they can easily spare. Also, three years is a long time to punish someone for a couple failed drug tests.
First of all, only people with a past drug conviction have to take such a drug screening test when they apply for governmental income assistance. This already reduces the number of people who are affected by this bill to a considerable extent. Also, in contrast to many US states, the legal status of marijuana in the Mideast leads to a lower number of people who potentially have a drug conviction and thus have to take this test.
Secondly, individuals who produce a clean test will get their money back. All they have to do is pay for the test in the first place, but I think this is reasonable since the average basic cost of a drug test is, as far as I read, only a few dozen dollars. And I do believe that the three-year exclusion from welfare benefits is justified in case a former drug convict fails the test repeatedly. But that is a subjective point of view, and it is clear to me that this may seem harsh to some. As far as I know, this part is based on the respective bill from Florida, which has served as a model for this piece of legislation.