Hi. I'm not sure what is 'budget' to you, but I don't think there is a cheap way to do this combination by coach tour, and certainly not by public transport.
I looked up International Friends, which I though was usually reasonable. I don't think they have that combination, but their Cotswolds/Bath/Stonehenge tour was around £70, which seems to be about par for the course.
Premium Tours, which has the combination you're talking about is £72.
Anderson Tours do Stonehenge and Bath for £45, but doesn't include Windsor. However, Windsor is easily doable from London by train as a half day and can cost as little as £8.10 for a return fare. So if you can spare 2 days (or 1 1/2) out of your holiday, this might be the cheapest way for you, and you should get longer in Bath and Windsor too. (1 hour for Stonehenge is sufficient!)