I noticed that when using weighted doesn't work when the weights are not integers. I think this is because uniform only returns integer values. For example (clojure.data.generators/uniform 0.0 1.1) always seems to return 0.
It doesn't mention this explicitly in the documentation, so I am not sure if this is intended behavior.