Looks like PHP is complaining about something on line 4 (and once on line 5) of the code between the [insert_php] and [/insert_php] tags.
The error lines you quote span about 3-1/2 hours. I suspect they were generated as you tried this and that with the PHP code on the post or page.
Insert PHP sends the code through an eval(), which is at line 48 of the plugin script. The "eval() code on line 4" tells you which line number in your code the issue was found.
More information on dealing with error messages is at
Thanks for keeping me in the loop. Much appreciated.
echo do_shortcode('[vfb id='5']');
echo do_shortcode("[vfb id='5']");
would resolve a quotes issue. When a quote character within a string is the same as the quote character bounding the string, the line will cause an error unless the quote in the string is escaped.
That's with any PHP script, not just within the Insert PHP plugin.
What you did is a good solution. Sometimes, however, the bounding string must remain as it is. If that had been the case in your example, a solution could have been:
echo do_shortcode('[vfb id=\'5\']');