If you want to use an explicit date value without specifying a format, use the ISO format: yyyyMMdd --> "20140525" in your example. All other ways of writing can depend on the system regional settings.
If your procedure is created correctly, it'll have a DATETIME or DATETIME2 parameter and is NOT expecting a string with a specific date format.
Example of parsing string as datetime with an explicit format:
DECLARE @DATEVAR DATETIME
SET @DATEVAR = CONVERT(DATETIME, '25-05-2014', 105)
With ISO FORMAT:
SET @DATEVAR = '20140525'
If you want to DISPLAY your date variable as a string in a certain format, you need to convert it the other way around:
DECLARE @DATEVAR DATETIME
DECLARE @STRINGVAR VARCHAR(50)
SET @DATEVAR = CONVERT(DATETIME, '25-05-2014', 105)
SET @STRINGVAR = CONVERT(VARCHAR(50), @DATEVAR, 105)
PRINT @STRINGVAR
In the example of your string, parse it like this and you'll simply have the ISO format left. Obviously, you could also use another date format and make it explicit.
SET @DATEVAR = REPLACE(REPLACE('2014.05.25.;', ';', ''), '.', '')