Wanting to use CMSIS DSP library sounds like a typical X-Y problem
CMSIS DSP library is a joke. Completely trivial math operations done in very limited and fixed ways. Sure, if you happen to have all data in buffers, in the right format, at once, anyway, and would just call a processing function once anyway, then you may as well use the library (and save writing the 5 lines of code function yourself). Although it still likely takes 10-100 times more time and commitment to read the library documentation, include the files, and use it.
Otherwise than that, usually you need realtime processing. Just write the math operations you want yourself. I think you were given some good and efficient code examples the last time you asked about the problem, what's wrong using them?
AFAIK this library does not implement complex algorithms (think about computer vision, or similar) and you wouldn't want any complex algorithm there anyway.
If you want to have the DC value of the signal, combining the actual DC existing in the signal, and any errors in your measurement:
Assuming you can decide you have either 50Hz or 60Hz signal, you can simply keep track of the average value over, say, 16 cycles (to reduce offset caused by frequency error by factor of 16), and subtract that. If you cannot sync to the signal, then you need a much longer average to subtract - or a FIR/IIR highpass/bandpass filter but that's going to need a lot of taps, too.
If you only want your measurement error, there is no other way than to model your error sources and do periodical calibrations, for which you need to be able to disconnect the load. (You could disconnect the measurement path, but then you would be calibrating only part of the system. Disconnecting the actual load would also leave the current transformer in the loop, to be compensated.)
And also Renate's right, do maximize the dynamic range of the current transformer and ADC. Try to make your maximum possible load signal to range from, say, 500 to 4096-500.