You are right that you would be saving it to both places.
You can hook into the CF7 hook like you show above or you can use the hook I provide in the link I cited above to define a function that inserts into your table. Both will work.
If you use the CF7 hook, then you don’t need the CFDB plugin at all (essentially you wrote your own!) But if you use the CF7 hook, it will only work with CF7. If you use the CFDB hook, it will work with all the front-ends forms that CFDB integrates with. And you get the data in both tables (don’t know if you consider that good or bad…but it let you use the CFDB short codes which pull data from the CFDB table, not your table)
For any one else reading, I think it worth mentioning that you can always create a View on the CFDB table to make it look like a regular table with columns for each of the form entries.