The database does the casting automatically. The values are treated as numerics, as the queries uses a “BETWEEN” statement, which only works with numeric values, I don't think this is the issue here.
Do you use another custom field selector by any chance? Checkbox or radio button? If so, then both criteria must match in order to display results.Best,
If you like my products, don't forget to rate them on codecanyon :)