You could do this from within the discounts interface, you would just need to add in the code that you updated the date to be like:
" . $this->DisplayInfo('DiscountDate') . "
If you use this in the interface it should appear in the charge rule the same as you have it now.
The problem with doing it this way is that you are not selecting the discount date for a given item but for the current item. If you had multiple products in the cart with different discount dates you would get some mixed results depending on what date appears first.
I think it might be better to store these values in session variables, then make use of the session variables inside of the discount rule. You can just put the code for the session value in for the date like this:
" . $_SESSION['<your DiscountDate session var>'] . "
This way you can control what is in the session variable and how the discount is applied.