Both have their own features
Bitninja runs on application layer and setup its own firewall rules. Their Modules Port Honeypot and Web Honeypot works pretty well, also another feature is malware and dos detection.
With our experience sometimes it can run too many processes when you run WAF module, but you have ability to enable and disable these features as per the traffic. You can also enable port flood. Overall there are lots of things you can play around if you see your server is under attack. But sometimes its getting hard to enable all those settings if your server is under heavy DDOS. Also first you will need go through their documentation and get idea about all these features.
With Cloudflare, with paid service the performance is really pretty stable. Though they have simple panel but all comes with one click. Advance DDOS protection works great. You can see their documentation and explanation about how they help for DDOS mitigation.
Overall Bitninja offer 7 days trial, so you can test the things. I did not see Cloudflare offer free trail for Business plan but you may contact sales for the same.