Developing for an FPGA using Impulse C
Do you have c code already for the function?  If so it may make some sense...  

To answer your specific questions (disclaimer - I haven't used Impulse C, but I have "read-the-book")

You don't have to use impulse for the whole project, it spits out a netlist that you can use as a block within a larger system.

"more or less bug-prone" is a tricky one.  I'd expect it to be easier to test in C than VHDL, so good coverage should be easier to get too.



Here's another thought:

For a complex function most of your time is spent writing verification code, so choose a language which makes that easy and then interface it to your low-level synthesisable code.

One option for this is MyHDL - you still write the FPGA part at the "behavioural RTL" level, but your testing can take advantage of the whole Python infrastructure.  So:


You get test management for free - just use one of the existing test frameworks
You have a random library already for generating test data
If you are creating an implementation of a standard algorithm (eg SHA) you can generate the expected answers for your random input data using (assumed-)good library code, rather than figuring it out yourself (possibly on paper)
If you want to use images or audio as input data, you can just call the libraries to do it.
Dealing with Ethernet packets? there's a library for creating those too
... etc!


Using C as your input language, tends to mean then using C (or C++) as your testing language - similar benefits can be had, but they are not "just there" you have to go installing and managing various libraries.