It looks like syntax highlighting is just fine, only does your colorscheme hide some syntax elements by defining identical colors, whereas the other has distinct colors.
Try out different colorschemes, or dive into the details of your colorscheme and the Haskell syntax, and change some links, e.g.:
hi link hsInfix Statement
For this, you need to find out which syntax group causes the highlighting.
:syn list shows all active groups, but it's easier when you install the SyntaxAttr.vim - Show syntax highlighting attributes of character under cursor plugin. When you have the name of the used syntax group, you can relink it to one of the basic groups that the colorscheme defines.
:help ft-haskell-syntax; the syntax plugin has some customizations built-in.