たった三つの分岐だし、俺なら一つの関数内で全部やるな
それが嫌なら、

fizz, buzz :: Int -> String -- 該当しないときは空文字列を返す
みたいなのを用意して、
case fizz n ++ buzz n of
  "" -> show n
  s -> s
とか
あるいは、空文字列が技巧的だと思うならMaybeでもいい