Они очень различаются. Blackness делает цвет грязным и очень не контрастным, в отличие от darken(). Поэтому может быть тоже самое лучше делать hsl или подобным.
lavezzi1: функции действительно различаются
с hsl/hwb удобно работать, но к сожалению положив их в переменную над их значениями нельзя будет манипулировать.