That waveform is simple what the PWM output gives you. So just and ananogWrite() function will set the duty cycle. You can change the PWM frequency as well see:- http://www.arduino.cc/playground/Code/PwmFrequency
Can't be hard to make something in VB for a rapid development
Problem with that is you can't get regular signals from a PC by bit banging due to the interrupts going off.