Didn't work when the value was something like 5%. However, I took your idea and modified it where it does work, because I didn't think to use things like left.
floor(percentile * 100) & "." & right(str(floor(percentile * 1000)), 1) & "%"
Thanks for the nudge in the right direction.