I believe you need to correct how you organize your data. In your case all the <16 are simply 16. The less thans are treated as ties regardless of their numerical value as they are numerically less than the smallest non-censored value (i.e., all the 16's need to be a single number less than 178.53) and you'll get the same answer.
test <- data.frame(Gp = c("A","A","A","B","B","B","C","C","C"),
Y = c(178.53, 226.87, 219.78, 16.00, 16.00,
16.00, 16.00, 16.00, 16.00))
with(test, kruskal.test(Y~Gp))
Keep in mind that if your data set were
A = 178.53, 226.87, 219.78, 5
B = <16.00, <16.00, <16.00, 5
C = <16.00, <16.00, <16.00, 5
then you would need to re-code all the 5's in the same way as you code the <16's since you dont know whether 5 is > or < a "<16".